YES 33.789
↳ HASKELL
↳ LR
((intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap b a -> [(b,a)]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (c -> a -> b -> b) -> b -> FiniteMap c a -> b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord c => (a -> b -> d) -> FiniteMap c a -> FiniteMap c b -> FiniteMap c d
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap b a -> Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: b -> a -> FiniteMap b a
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
\leftright→right
intersectFM0 left right = right
\(mid_key1,_)→mid_key1
mid_key10 (mid_key1,_) = mid_key1
\(_,mid_elt1)→mid_elt1
mid_elt10 (_,mid_elt1) = mid_elt1
\(mid_key2,_)→mid_key2
mid_key20 (mid_key2,_) = mid_key2
\(_,mid_elt2)→mid_elt2
mid_elt20 (_,mid_elt2) = mid_elt2
\(Just elt1)→elt1
elt10 (Just elt1) = elt1
\keyeltrest→(key,elt) : rest
fmToList0 key elt rest = (key,elt) : rest
\oldnew→new
addToFM0 old new = new
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
((intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord a => FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (b -> c -> a -> a) -> a -> FiniteMap b c -> a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord b => (a -> c -> d) -> FiniteMap b a -> FiniteMap b c -> FiniteMap b d
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap a b -> Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: a -> b -> FiniteMap a b
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
case fm_R of Branch _ _ _ fm_rl fm_rr
| sizeFM fm_rl < 2 * sizeFM fm_rr
→ single_L fm_L fm_R | otherwise
→ double_L fm_L fm_R
mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr)
| sizeFM fm_rl < 2 * sizeFM fm_rr
= single_L fm_L fm_R | otherwise
= double_L fm_L fm_R
case fm_L of Branch _ _ _ fm_ll fm_lr
| sizeFM fm_lr < 2 * sizeFM fm_ll
→ single_R fm_L fm_R | otherwise
→ double_R fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr)
| sizeFM fm_lr < 2 * sizeFM fm_ll
= single_R fm_L fm_R | otherwise
= double_R fm_L fm_R
case fm_l of EmptyFM → True Branch left_key _ _ _ _ →
let
biggest_left_key = fst (findMax fm_l) in biggest_left_key < key
left_ok0 fm_l key EmptyFM = True left_ok0 fm_l key (Branch left_key _ _ _ _) =
let
biggest_left_key = fst (findMax fm_l) in biggest_left_key < key
case fm_r of EmptyFM → True Branch right_key _ _ _ _ →
let
smallest_right_key = fst (findMin fm_r) in key < smallest_right_key
right_ok0 fm_r key EmptyFM = True right_ok0 fm_r key (Branch right_key _ _ _ _) =
let
smallest_right_key = fst (findMin fm_r) in key < smallest_right_key
case compare x y of EQ → o LT → LT GT → GT
primCompAux0 o EQ = o primCompAux0 o LT = LT primCompAux0 o GT = GT
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
((intersectFM :: Ord b => FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a) :: Ord b => FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a) |
import qualified Maybe import qualified Prelude |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord a => FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (a -> c -> b -> b) -> b -> FiniteMap a c -> b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord b => (d -> a -> c) -> FiniteMap b d -> FiniteMap b a -> FiniteMap b c
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap a b -> Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: a -> b -> FiniteMap a b
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero
primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y)) primDivNatS0 x y False = Zero
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x
primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y) primModNatS0 x y False = Succ x
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
((intersectFM :: Ord b => FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a) :: Ord b => FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a -> FiniteMap (Maybe b) a) |
import qualified Maybe import qualified Prelude |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap b a -> (b,a)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap a b -> (a,b)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (b -> a -> c -> c) -> c -> FiniteMap b a -> c
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord b => (d -> a -> c) -> FiniteMap b d -> FiniteMap b a -> FiniteMap b c
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap b a -> Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: b -> a -> FiniteMap b a
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
fm_l@(Branch vy vz wu wv ww)
Branch vy vz wu wv ww
fm_r@(Branch wy wz xu xv xw)
Branch wy wz xu xv xw
fm_l@(Branch vxz vyu vyv vyw vyx)
Branch vxz vyu vyv vyw vyx
fm_r@(Branch vyz vzu vzv vzw vzx)
Branch vyz vzu vzv vzw vzx
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
((intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord a => FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap a b -> (a,b)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap a b -> (a,b)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (b -> c -> a -> a) -> a -> FiniteMap b c -> a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord a => (b -> d -> c) -> FiniteMap a b -> FiniteMap a d -> FiniteMap a c
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap b a -> Int
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: b -> a -> FiniteMap b a
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
splitGT EmptyFM split_key = emptyFM splitGT (Branch key elt vw fm_l fm_r) split_key
| split_key > key
= splitGT fm_r split_key | split_key < key
= mkVBalBranch key elt (splitGT fm_l split_key) fm_r | otherwise
= fm_r
splitGT EmptyFM split_key = splitGT4 EmptyFM split_key splitGT (Branch key elt vw fm_l fm_r) split_key = splitGT3 (Branch key elt vw fm_l fm_r) split_key
splitGT1 key elt vw fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_key) fm_r splitGT1 key elt vw fm_l fm_r split_key False = splitGT0 key elt vw fm_l fm_r split_key otherwise
splitGT0 key elt vw fm_l fm_r split_key True = fm_r
splitGT2 key elt vw fm_l fm_r split_key True = splitGT fm_r split_key splitGT2 key elt vw fm_l fm_r split_key False = splitGT1 key elt vw fm_l fm_r split_key (split_key < key)
splitGT3 (Branch key elt vw fm_l fm_r) split_key = splitGT2 key elt vw fm_l fm_r split_key (split_key > key)
splitGT4 EmptyFM split_key = emptyFM splitGT4 wzz xuu = splitGT3 wzz xuu
glueVBal EmptyFM fm2 = fm2 glueVBal fm1 EmptyFM = fm1 glueVBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw)
| sIZE_RATIO * size_l < size_r
= mkBalBranch wy wz (glueVBal (Branch vy vz wu wv ww) xv) xw | sIZE_RATIO * size_r < size_l
= mkBalBranch vy vz wv (glueVBal ww (Branch wy wz xu xv xw)) | otherwise
= glueBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw) where
size_l = sizeFM (Branch vy vz wu wv ww)
size_r = sizeFM (Branch wy wz xu xv xw)
glueVBal EmptyFM fm2 = glueVBal5 EmptyFM fm2 glueVBal fm1 EmptyFM = glueVBal4 fm1 EmptyFM glueVBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw) = glueVBal3 (Branch vy vz wu wv ww) (Branch wy wz xu xv xw)
glueVBal3 (Branch vy vz wu wv ww) (Branch wy wz xu xv xw) =
glueVBal2 vy vz wu wv ww wy wz xu xv xw (sIZE_RATIO * size_l < size_r) where
glueVBal0 vy vz wu wv ww wy wz xu xv xw True = glueBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw)
glueVBal1 vy vz wu wv ww wy wz xu xv xw True = mkBalBranch vy vz wv (glueVBal ww (Branch wy wz xu xv xw)) glueVBal1 vy vz wu wv ww wy wz xu xv xw False = glueVBal0 vy vz wu wv ww wy wz xu xv xw otherwise
glueVBal2 vy vz wu wv ww wy wz xu xv xw True = mkBalBranch wy wz (glueVBal (Branch vy vz wu wv ww) xv) xw glueVBal2 vy vz wu wv ww wy wz xu xv xw False = glueVBal1 vy vz wu wv ww wy wz xu xv xw (sIZE_RATIO * size_r < size_l)
size_l = sizeFM (Branch vy vz wu wv ww)
size_r = sizeFM (Branch wy wz xu xv xw)
glueVBal4 fm1 EmptyFM = fm1 glueVBal4 xuy xuz = glueVBal3 xuy xuz
glueVBal5 EmptyFM fm2 = fm2 glueVBal5 xvv xvw = glueVBal4 xvv xvw
mkBalBranch1 fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
| sizeFM fm_lr < 2 * sizeFM fm_ll
= single_R fm_L fm_R | otherwise
= double_R fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr True = single_R fm_L fm_R mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr False = mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr otherwise
mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr True = double_R fm_L fm_R
mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch0 fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
| sizeFM fm_rl < 2 * sizeFM fm_rr
= single_L fm_L fm_R | otherwise
= double_L fm_L fm_R
mkBalBranch0 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr True = double_L fm_L fm_R
mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr True = single_L fm_L fm_R mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr False = mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch key elt fm_L fm_R
| size_l + size_r < 2
= mkBranch 1 key elt fm_L fm_R | size_r > sIZE_RATIO * size_l
= mkBalBranch0 fm_L fm_R fm_R | size_l > sIZE_RATIO * size_r
= mkBalBranch1 fm_L fm_R fm_L | otherwise
= mkBranch 2 key elt fm_L fm_R where
double_L fm_l (Branch key_r elt_r yx (Branch key_rl elt_rl yy fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l xy fm_ll (Branch key_lr elt_lr xz fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
| sizeFM fm_rl < 2 * sizeFM fm_rr
= single_L fm_L fm_R | otherwise
= double_L fm_L fm_R
mkBalBranch1 fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
| sizeFM fm_lr < 2 * sizeFM fm_ll
= single_R fm_L fm_R | otherwise
= double_R fm_L fm_R
single_L fm_l (Branch key_r elt_r zw fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l xx fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l = sizeFM fm_L
size_r = sizeFM fm_R
mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R
mkBalBranch6 key elt fm_L fm_R =
mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where
double_L fm_l (Branch key_r elt_r yx (Branch key_rl elt_rl yy fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l xy fm_ll (Branch key_lr elt_lr xz fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr True = double_L fm_L fm_R
mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr True = single_L fm_L fm_R mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr False = mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch1 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr True = double_R fm_L fm_R
mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr True = single_R fm_L fm_R mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr False = mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr otherwise
mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R
mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise
mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r)
mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l)
single_L fm_l (Branch key_r elt_r zw fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l xx fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l = sizeFM fm_L
size_r = sizeFM fm_R
glueBal EmptyFM fm2 = fm2 glueBal fm1 EmptyFM = fm1 glueBal fm1 fm2
| sizeFM fm2 > sizeFM fm1
= mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2) | otherwise
= mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2 where
mid_elt1 = mid_elt10 vv2
mid_elt10 (zx,mid_elt1) = mid_elt1
mid_elt2 = mid_elt20 vv3
mid_elt20 (zy,mid_elt2) = mid_elt2
mid_key1 = mid_key10 vv2
mid_key10 (mid_key1,zz) = mid_key1
mid_key2 = mid_key20 vv3
mid_key20 (mid_key2,vuu) = mid_key2
vv2 = findMax fm1
vv3 = findMin fm2
glueBal EmptyFM fm2 = glueBal4 EmptyFM fm2 glueBal fm1 EmptyFM = glueBal3 fm1 EmptyFM glueBal fm1 fm2 = glueBal2 fm1 fm2
glueBal2 fm1 fm2 =
glueBal1 fm1 fm2 (sizeFM fm2 > sizeFM fm1) where
glueBal0 fm1 fm2 True = mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2
glueBal1 fm1 fm2 True = mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2) glueBal1 fm1 fm2 False = glueBal0 fm1 fm2 otherwise
mid_elt1 = mid_elt10 vv2
mid_elt10 (zx,mid_elt1) = mid_elt1
mid_elt2 = mid_elt20 vv3
mid_elt20 (zy,mid_elt2) = mid_elt2
mid_key1 = mid_key10 vv2
mid_key10 (mid_key1,zz) = mid_key1
mid_key2 = mid_key20 vv3
mid_key20 (mid_key2,vuu) = mid_key2
vv2 = findMax fm1
vv3 = findMin fm2
glueBal3 fm1 EmptyFM = fm1 glueBal3 xwu xwv = glueBal2 xwu xwv
glueBal4 EmptyFM fm2 = fm2 glueBal4 xwx xwy = glueBal3 xwx xwy
addToFM_C combiner EmptyFM key elt = unitFM key elt addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt
| new_key < key
= mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r | new_key > key
= mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) | otherwise
= Branch new_key (combiner elt new_elt) size fm_l fm_r
addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt
addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key)
addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_elt) size fm_l fm_r
addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise
addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key)
addToFM_C4 combiner EmptyFM key elt = unitFM key elt addToFM_C4 xxv xxw xxx xxy = addToFM_C3 xxv xxw xxx xxy
intersectFM_C combiner fm1 EmptyFM = emptyFM intersectFM_C combiner EmptyFM fm2 = emptyFM intersectFM_C combiner fm1 (Branch split_key elt2 vuv left right)
| Maybe.isJust maybe_elt1
= mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) | otherwise
= glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) where
elt1 = elt10 vv1
elt10 (Just elt1) = elt1
gts = splitGT fm1 split_key
lts = splitLT fm1 split_key
maybe_elt1 = lookupFM fm1 split_key
vv1 = maybe_elt1
intersectFM_C combiner fm1 EmptyFM = intersectFM_C4 combiner fm1 EmptyFM intersectFM_C combiner EmptyFM fm2 = intersectFM_C3 combiner EmptyFM fm2 intersectFM_C combiner fm1 (Branch split_key elt2 vuv left right) = intersectFM_C2 combiner fm1 (Branch split_key elt2 vuv left right)
intersectFM_C2 combiner fm1 (Branch split_key elt2 vuv left right) =
intersectFM_C1 combiner fm1 split_key elt2 vuv left right (Maybe.isJust maybe_elt1) where
elt1 = elt10 vv1
elt10 (Just elt1) = elt1
gts = splitGT fm1 split_key
intersectFM_C0 combiner fm1 split_key elt2 vuv left right True = glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 vuv left right True = mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) intersectFM_C1 combiner fm1 split_key elt2 vuv left right False = intersectFM_C0 combiner fm1 split_key elt2 vuv left right otherwise
lts = splitLT fm1 split_key
maybe_elt1 = lookupFM fm1 split_key
vv1 = maybe_elt1
intersectFM_C3 combiner EmptyFM fm2 = emptyFM intersectFM_C3 xyv xyw xyx = intersectFM_C2 xyv xyw xyx
intersectFM_C4 combiner fm1 EmptyFM = emptyFM intersectFM_C4 xyz xzu xzv = intersectFM_C3 xyz xzu xzv
splitLT EmptyFM split_key = emptyFM splitLT (Branch key elt vvz fm_l fm_r) split_key
| split_key < key
= splitLT fm_l split_key | split_key > key
= mkVBalBranch key elt fm_l (splitLT fm_r split_key) | otherwise
= fm_l
splitLT EmptyFM split_key = splitLT4 EmptyFM split_key splitLT (Branch key elt vvz fm_l fm_r) split_key = splitLT3 (Branch key elt vvz fm_l fm_r) split_key
splitLT0 key elt vvz fm_l fm_r split_key True = fm_l
splitLT2 key elt vvz fm_l fm_r split_key True = splitLT fm_l split_key splitLT2 key elt vvz fm_l fm_r split_key False = splitLT1 key elt vvz fm_l fm_r split_key (split_key > key)
splitLT1 key elt vvz fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key) splitLT1 key elt vvz fm_l fm_r split_key False = splitLT0 key elt vvz fm_l fm_r split_key otherwise
splitLT3 (Branch key elt vvz fm_l fm_r) split_key = splitLT2 key elt vvz fm_l fm_r split_key (split_key < key)
splitLT4 EmptyFM split_key = emptyFM splitLT4 xzy xzz = splitLT3 xzy xzz
mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx)
| sIZE_RATIO * size_l < size_r
= mkBalBranch vyz vzu (mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) vzw) vzx | sIZE_RATIO * size_r < size_l
= mkBalBranch vxz vyu vyw (mkVBalBranch key elt vyx (Branch vyz vzu vzv vzw vzx)) | otherwise
= mkBranch 13 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx) where
size_l = sizeFM (Branch vxz vyu vyv vyw vyx)
size_r = sizeFM (Branch vyz vzu vzv vzw vzx)
mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx) = mkVBalBranch3 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx)
mkVBalBranch3 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx) =
mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx (sIZE_RATIO * size_l < size_r) where
mkVBalBranch0 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBranch 13 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx)
mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vxz vyu vyw (mkVBalBranch key elt vyx (Branch vyz vzu vzv vzw vzx)) mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch0 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx otherwise
mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vyz vzu (mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) vzw) vzx mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx (sIZE_RATIO * size_r < size_l)
size_l = sizeFM (Branch vxz vyu vyv vyw vyx)
size_r = sizeFM (Branch vyz vzu vzv vzw vzx)
mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt mkVBalBranch4 yux yuy yuz yvu = mkVBalBranch3 yux yuy yuz yvu
mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt mkVBalBranch5 yvw yvx yvy yvz = mkVBalBranch4 yvw yvx yvy yvz
lookupFM EmptyFM key = Nothing lookupFM (Branch key elt wuw fm_l fm_r) key_to_find
| key_to_find < key
= lookupFM fm_l key_to_find | key_to_find > key
= lookupFM fm_r key_to_find | otherwise
= Just elt
lookupFM EmptyFM key = lookupFM4 EmptyFM key lookupFM (Branch key elt wuw fm_l fm_r) key_to_find = lookupFM3 (Branch key elt wuw fm_l fm_r) key_to_find
lookupFM2 key elt wuw fm_l fm_r key_to_find True = lookupFM fm_l key_to_find lookupFM2 key elt wuw fm_l fm_r key_to_find False = lookupFM1 key elt wuw fm_l fm_r key_to_find (key_to_find > key)
lookupFM0 key elt wuw fm_l fm_r key_to_find True = Just elt
lookupFM1 key elt wuw fm_l fm_r key_to_find True = lookupFM fm_r key_to_find lookupFM1 key elt wuw fm_l fm_r key_to_find False = lookupFM0 key elt wuw fm_l fm_r key_to_find otherwise
lookupFM3 (Branch key elt wuw fm_l fm_r) key_to_find = lookupFM2 key elt wuw fm_l fm_r key_to_find (key_to_find < key)
lookupFM4 EmptyFM key = Nothing lookupFM4 yww ywx = lookupFM3 yww ywx
compare x y
| x == y
= EQ | x <= y
= LT | otherwise
= GT
compare x y = compare3 x y
compare1 x y True = LT compare1 x y False = compare0 x y otherwise
compare2 x y True = EQ compare2 x y False = compare1 x y (x <= y)
compare0 x y True = GT
compare3 x y = compare2 x y (x == y)
gcd' x 0 = x gcd' x y = gcd' y (x `rem` y)
gcd' x ywy = gcd'2 x ywy gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x ywy = x gcd'1 ywz yxu yxv = gcd'0 yxu yxv
gcd'2 x ywy = gcd'1 (ywy == 0) x ywy gcd'2 yxw yxx = gcd'0 yxw yxx
gcd 0 0 = error [] gcd x y =
gcd' (abs x) (abs y) where
gcd' x 0 = x gcd' x y = gcd' y (x `rem` y)
gcd yxy yxz = gcd3 yxy yxz gcd x y = gcd0 x y
gcd0 x y =
gcd' (abs x) (abs y) where
gcd' x ywy = gcd'2 x ywy gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x ywy = x gcd'1 ywz yxu yxv = gcd'0 yxu yxv
gcd'2 x ywy = gcd'1 (ywy == 0) x ywy gcd'2 yxw yxx = gcd'0 yxw yxx
gcd1 True yxy yxz = error [] gcd1 yyu yyv yyw = gcd0 yyv yyw
gcd2 True yxy yxz = gcd1 (yxz == 0) yxy yxz gcd2 yyx yyy yyz = gcd0 yyy yyz
gcd3 yxy yxz = gcd2 (yxy == 0) yxy yxz gcd3 yzu yzv = gcd0 yzu yzv
absReal x
| x >= 0
= x | otherwise
= `negate` x
absReal x = absReal2 x
absReal1 x True = x absReal1 x False = absReal0 x otherwise
absReal0 x True = `negate` x
absReal2 x = absReal1 x (x >= 0)
undefined
| False
= undefined
undefined = undefined1
undefined0 True = undefined
undefined1 = undefined0 False
reduce x y
| y == 0
= error [] | otherwise
= x `quot` d :% (y `quot` d) where
d = gcd x y
reduce x y = reduce2 x y
reduce2 x y =
reduce1 x y (y == 0) where
d = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error [] reduce1 x y False = reduce0 x y otherwise
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
((intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMax :: Ord a => FiniteMap a b -> FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleteMin :: Ord b => FiniteMap b a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyFM :: FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMax :: FiniteMap a b -> (a,b)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
findMin :: FiniteMap a b -> (a,b)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
intersectFM_C :: Ord d => (a -> c -> b) -> FiniteMap d a -> FiniteMap d c -> FiniteMap d b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sIZE_RATIO :: Int
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sizeFM :: FiniteMap b a -> Int
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unitFM :: b -> a -> FiniteMap b a
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
intersectFM_C1 combiner fm1 split_key elt2 vuv left right (Maybe.isJust maybe_elt1) where
elt1 = elt10 vv1
elt10 (Just elt1) = elt1
gts = splitGT fm1 split_key
intersectFM_C0 combiner fm1 split_key elt2 vuv left right True = glueVBal (intersectFM_C combiner lts left) (intersectFM_C combiner gts right)
intersectFM_C1 combiner fm1 split_key elt2 vuv left right True = mkVBalBranch split_key (combiner elt1 elt2) (intersectFM_C combiner lts left) (intersectFM_C combiner gts right) intersectFM_C1 combiner fm1 split_key elt2 vuv left right False = intersectFM_C0 combiner fm1 split_key elt2 vuv left right otherwise
lts = splitLT fm1 split_key
maybe_elt1 = lookupFM fm1 split_key
vv1 = maybe_elt1
intersectFM_C2Maybe_elt1 yzw yzx = lookupFM yzw yzx
intersectFM_C2Vv1 yzw yzx = intersectFM_C2Maybe_elt1 yzw yzx
intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 vuv left right True = mkVBalBranch split_key (combiner (intersectFM_C2Elt1 yzw yzx) elt2) (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right) intersectFM_C2IntersectFM_C1 yzw yzx combiner fm1 split_key elt2 vuv left right False = intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 vuv left right otherwise
intersectFM_C2Lts yzw yzx = splitLT yzw yzx
intersectFM_C2IntersectFM_C0 yzw yzx combiner fm1 split_key elt2 vuv left right True = glueVBal (intersectFM_C combiner (intersectFM_C2Lts yzw yzx) left) (intersectFM_C combiner (intersectFM_C2Gts yzw yzx) right)
intersectFM_C2Elt10 yzw yzx (Just elt1) = elt1
intersectFM_C2Gts yzw yzx = splitGT yzw yzx
intersectFM_C2Elt1 yzw yzx = intersectFM_C2Elt10 yzw yzx (intersectFM_C2Vv1 yzw yzx)
glueBal1 fm1 fm2 (sizeFM fm2 > sizeFM fm1) where
glueBal0 fm1 fm2 True = mkBalBranch mid_key1 mid_elt1 (deleteMax fm1) fm2
glueBal1 fm1 fm2 True = mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin fm2) glueBal1 fm1 fm2 False = glueBal0 fm1 fm2 otherwise
mid_elt1 = mid_elt10 vv2
mid_elt10 (zx,mid_elt1) = mid_elt1
mid_elt2 = mid_elt20 vv3
mid_elt20 (zy,mid_elt2) = mid_elt2
mid_key1 = mid_key10 vv2
mid_key10 (mid_key1,zz) = mid_key1
mid_key2 = mid_key20 vv3
mid_key20 (mid_key2,vuu) = mid_key2
vv2 = findMax fm1
vv3 = findMin fm2
glueBal2GlueBal0 yzy yzz fm1 fm2 True = mkBalBranch (glueBal2Mid_key1 yzy yzz) (glueBal2Mid_elt1 yzy yzz) (deleteMax fm1) fm2
glueBal2Mid_elt10 yzy yzz (zx,mid_elt1) = mid_elt1
glueBal2Mid_key20 yzy yzz (mid_key2,vuu) = mid_key2
glueBal2Mid_elt20 yzy yzz (zy,mid_elt2) = mid_elt2
glueBal2GlueBal1 yzy yzz fm1 fm2 True = mkBalBranch (glueBal2Mid_key2 yzy yzz) (glueBal2Mid_elt2 yzy yzz) fm1 (deleteMin fm2) glueBal2GlueBal1 yzy yzz fm1 fm2 False = glueBal2GlueBal0 yzy yzz fm1 fm2 otherwise
glueBal2Mid_elt1 yzy yzz = glueBal2Mid_elt10 yzy yzz (glueBal2Vv2 yzy yzz)
glueBal2Mid_elt2 yzy yzz = glueBal2Mid_elt20 yzy yzz (glueBal2Vv3 yzy yzz)
glueBal2Vv2 yzy yzz = findMax yzy
glueBal2Mid_key2 yzy yzz = glueBal2Mid_key20 yzy yzz (glueBal2Vv3 yzy yzz)
glueBal2Mid_key10 yzy yzz (mid_key1,zz) = mid_key1
glueBal2Vv3 yzy yzz = findMin yzz
glueBal2Mid_key1 yzy yzz = glueBal2Mid_key10 yzy yzz (glueBal2Vv2 yzy yzz)
mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where
double_L fm_l (Branch key_r elt_r yx (Branch key_rl elt_rl yy fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
double_R (Branch key_l elt_l xy fm_ll (Branch key_lr elt_lr xz fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r)
mkBalBranch0 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr True = double_L fm_L fm_R
mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr True = single_L fm_L fm_R mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr False = mkBalBranch00 fm_L fm_R yz zu zv fm_rl fm_rr otherwise
mkBalBranch02 fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch01 fm_L fm_R yz zu zv fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch1 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr True = double_R fm_L fm_R
mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr True = single_R fm_L fm_R mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr False = mkBalBranch10 fm_L fm_R yu yv yw fm_ll fm_lr otherwise
mkBalBranch12 fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch11 fm_L fm_R yu yv yw fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R
mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise
mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r)
mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l)
single_L fm_l (Branch key_r elt_r zw fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr
single_R (Branch key_l elt_l xx fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r)
size_l = sizeFM fm_L
size_r = sizeFM fm_R
mkBalBranch6Double_R zuu zuv zuw zux (Branch key_l elt_l xy fm_ll (Branch key_lr elt_lr xz fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 zuu zuv fm_lrr fm_r)
mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R yu yv yw fm_ll fm_lr True = mkBalBranch6Single_R zuu zuv zuw zux fm_L fm_R mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R yu yv yw fm_ll fm_lr False = mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R yu yv yw fm_ll fm_lr otherwise
mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R True = mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R fm_L mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R otherwise
mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch6MkBalBranch11 zuu zuv zuw zux fm_L fm_R yu yv yw fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll)
mkBalBranch6Size_r zuu zuv zuw zux = sizeFM zuw
mkBalBranch6Single_R zuu zuv zuw zux (Branch key_l elt_l xx fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 zuu zuv fm_lr fm_r)
mkBalBranch6Size_l zuu zuv zuw zux = sizeFM zux
mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch yz zu zv fm_rl fm_rr)
mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R mkBalBranch6MkBalBranch5 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_r zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_l zuu zuv zuw zux)
mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R yz zu zv fm_rl fm_rr True = mkBalBranch6Single_L zuu zuv zuw zux fm_L fm_R mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R yz zu zv fm_rl fm_rr False = mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R yz zu zv fm_rl fm_rr otherwise
mkBalBranch6MkBalBranch00 zuu zuv zuw zux fm_L fm_R yz zu zv fm_rl fm_rr True = mkBalBranch6Double_L zuu zuv zuw zux fm_L fm_R
mkBalBranch6Single_L zuu zuv zuw zux fm_l (Branch key_r elt_r zw fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 zuu zuv fm_l fm_rl) fm_rr
mkBalBranch6MkBalBranch02 zuu zuv zuw zux fm_L fm_R (Branch yz zu zv fm_rl fm_rr) = mkBalBranch6MkBalBranch01 zuu zuv zuw zux fm_L fm_R yz zu zv fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr)
mkBalBranch6MkBalBranch1 zuu zuv zuw zux fm_L fm_R (Branch yu yv yw fm_ll fm_lr) = mkBalBranch6MkBalBranch12 zuu zuv zuw zux fm_L fm_R (Branch yu yv yw fm_ll fm_lr)
mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R True = mkBalBranch6MkBalBranch0 zuu zuv zuw zux fm_L fm_R fm_R mkBalBranch6MkBalBranch4 zuu zuv zuw zux key elt fm_L fm_R False = mkBalBranch6MkBalBranch3 zuu zuv zuw zux key elt fm_L fm_R (mkBalBranch6Size_l zuu zuv zuw zux > sIZE_RATIO * mkBalBranch6Size_r zuu zuv zuw zux)
mkBalBranch6MkBalBranch2 zuu zuv zuw zux key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R
mkBalBranch6MkBalBranch10 zuu zuv zuw zux fm_L fm_R yu yv yw fm_ll fm_lr True = mkBalBranch6Double_R zuu zuv zuw zux fm_L fm_R
mkBalBranch6Double_L zuu zuv zuw zux fm_l (Branch key_r elt_r yx (Branch key_rl elt_rl yy fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 zuu zuv fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr)
glueVBal2 vy vz wu wv ww wy wz xu xv xw (sIZE_RATIO * size_l < size_r) where
glueVBal0 vy vz wu wv ww wy wz xu xv xw True = glueBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw)
glueVBal1 vy vz wu wv ww wy wz xu xv xw True = mkBalBranch vy vz wv (glueVBal ww (Branch wy wz xu xv xw)) glueVBal1 vy vz wu wv ww wy wz xu xv xw False = glueVBal0 vy vz wu wv ww wy wz xu xv xw otherwise
glueVBal2 vy vz wu wv ww wy wz xu xv xw True = mkBalBranch wy wz (glueVBal (Branch vy vz wu wv ww) xv) xw glueVBal2 vy vz wu wv ww wy wz xu xv xw False = glueVBal1 vy vz wu wv ww wy wz xu xv xw (sIZE_RATIO * size_r < size_l)
size_l = sizeFM (Branch vy vz wu wv ww)
size_r = sizeFM (Branch wy wz xu xv xw)
glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw True = mkBalBranch vy vz wv (glueVBal ww (Branch wy wz xu xv xw)) glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw False = glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw otherwise
glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv = sizeFM (Branch zuy zuz zvu zvv zvw)
glueVBal3GlueVBal0 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw True = glueBal (Branch vy vz wu wv ww) (Branch wy wz xu xv xw)
glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw True = mkBalBranch wy wz (glueVBal (Branch vy vz wu wv ww) xv) xw glueVBal3GlueVBal2 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw False = glueVBal3GlueVBal1 zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv vy vz wu wv ww wy wz xu xv xw (sIZE_RATIO * glueVBal3Size_r zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv < glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv)
glueVBal3Size_l zuy zuz zvu zvv zvw zvx zvy zvz zwu zwv = sizeFM (Branch zvx zvy zvz zwu zwv)
let
result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r in result where
balance_ok = True
left_ok = left_ok0 fm_l key fm_l
left_ok0 fm_l key EmptyFM = True left_ok0 fm_l key (Branch left_key vuw vux vuy vuz) =
let
biggest_left_key = fst (findMax fm_l) in biggest_left_key < key
left_size = sizeFM fm_l
right_ok = right_ok0 fm_r key fm_r
right_ok0 fm_r key EmptyFM = True right_ok0 fm_r key (Branch right_key vvu vvv vvw vvx) =
let
smallest_right_key = fst (findMin fm_r) in key < smallest_right_key
right_size = sizeFM fm_r
unbox x = x
mkBranchUnbox zww zwx zwy x = x
mkBranchRight_ok zww zwx zwy = mkBranchRight_ok0 zww zwx zwy zww zwx zww
mkBranchLeft_ok zww zwx zwy = mkBranchLeft_ok0 zww zwx zwy zwy zwx zwy
mkBranchBalance_ok zww zwx zwy = True
mkBranchLeft_size zww zwx zwy = sizeFM zwy
mkBranchRight_ok0 zww zwx zwy fm_r key EmptyFM = True mkBranchRight_ok0 zww zwx zwy fm_r key (Branch right_key vvu vvv vvw vvx) = key < mkBranchRight_ok0Smallest_right_key fm_r
mkBranchRight_size zww zwx zwy = sizeFM zww
mkBranchLeft_ok0 zww zwx zwy fm_l key EmptyFM = True mkBranchLeft_ok0 zww zwx zwy fm_l key (Branch left_key vuw vux vuy vuz) = mkBranchLeft_ok0Biggest_left_key fm_l < key
let
result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r in result
mkBranchResult zwz zxu zxv zxw = Branch zwz zxu (mkBranchUnbox zxv zwz zxw (1 + mkBranchLeft_size zxv zwz zxw + mkBranchRight_size zxv zwz zxw)) zxw zxv
mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx (sIZE_RATIO * size_l < size_r) where
mkVBalBranch0 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBranch 13 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx)
mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vxz vyu vyw (mkVBalBranch key elt vyx (Branch vyz vzu vzv vzw vzx)) mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch0 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx otherwise
mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vyz vzu (mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) vzw) vzx mkVBalBranch2 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch1 key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx (sIZE_RATIO * size_r < size_l)
size_l = sizeFM (Branch vxz vyu vyv vyw vyx)
size_r = sizeFM (Branch vyz vzu vzv vzw vzx)
mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBranch 13 key elt (Branch vxz vyu vyv vyw vyx) (Branch vyz vzu vzv vzw vzx)
mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vxz vyu vyw (mkVBalBranch key elt vyx (Branch vyz vzu vzv vzw vzx)) mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch3MkVBalBranch0 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx otherwise
mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu = sizeFM (Branch zxx zxy zxz zyu zyv)
mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx True = mkBalBranch vyz vzu (mkVBalBranch key elt (Branch vxz vyu vyv vyw vyx) vzw) vzx mkVBalBranch3MkVBalBranch2 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx False = mkVBalBranch3MkVBalBranch1 zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu key elt vxz vyu vyv vyw vyx vyz vzu vzv vzw vzx (sIZE_RATIO * mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu < mkVBalBranch3Size_l zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu)
mkVBalBranch3Size_r zxx zxy zxz zyu zyv zyw zyx zyy zyz zzu = sizeFM (Branch zyw zyx zyy zyz zzu)
let
smallest_right_key = fst (findMin fm_r) in key < smallest_right_key
mkBranchRight_ok0Smallest_right_key zzv = fst (findMin zzv)
let
biggest_left_key = fst (findMax fm_l) in biggest_left_key < key
mkBranchLeft_ok0Biggest_left_key zzw = fst (findMax zzw)
reduce1 x y (y == 0) where
d = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error [] reduce1 x y False = reduce0 x y otherwise
reduce2D zzx zzy = gcd zzx zzy
reduce2Reduce0 zzx zzy x y True = x `quot` reduce2D zzx zzy :% (y `quot` reduce2D zzx zzy)
reduce2Reduce1 zzx zzy x y True = error [] reduce2Reduce1 zzx zzy x y False = reduce2Reduce0 zzx zzy x y otherwise
gcd' (abs x) (abs y) where
gcd' x ywy = gcd'2 x ywy gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x ywy = x gcd'1 ywz yxu yxv = gcd'0 yxu yxv
gcd'2 x ywy = gcd'1 (ywy == 0) x ywy gcd'2 yxw yxx = gcd'0 yxw yxx
gcd0Gcd'2 x ywy = gcd0Gcd'1 (ywy == 0) x ywy gcd0Gcd'2 yxw yxx = gcd0Gcd'0 yxw yxx
gcd0Gcd'1 True x ywy = x gcd0Gcd'1 ywz yxu yxv = gcd0Gcd'0 yxu yxv
gcd0Gcd' x ywy = gcd0Gcd'2 x ywy gcd0Gcd' x y = gcd0Gcd'0 x y
gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
((intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
|||||||||||||
data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) |
|||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|||||||||||||
addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||
deleteMin :: Ord a => FiniteMap a b -> FiniteMap a b
|
|||||||||||||
emptyFM :: FiniteMap a b
|
|||||||||||||
findMax :: FiniteMap b a -> (b,a)
|
|||||||||||||
findMin :: FiniteMap b a -> (b,a)
|
|||||||||||||
fmToList :: FiniteMap b a -> [(b,a)]
|
|||||||||||||
|
|||||||||||||
foldFM :: (c -> a -> b -> b) -> b -> FiniteMap c a -> b
|
|||||||||||||
glueBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
intersectFM_C :: Ord a => (b -> d -> c) -> FiniteMap a b -> FiniteMap a d -> FiniteMap a c
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBranchUnbox :: Ord a => -> (FiniteMap a b) ( -> a ( -> (FiniteMap a b) (Int -> Int)))
|
|||||||||||||
mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||
sizeFM :: FiniteMap a b -> Int
|
|||||||||||||
splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
unitFM :: a -> b -> FiniteMap a b
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
(intersectFM :: Ord a => FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b -> FiniteMap (Maybe a) b) |
import qualified Maybe import qualified Prelude |
|||||||||||||
data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) |
|||||||||||||
instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|||||||||||||
addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
deleteMax :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||
deleteMin :: Ord b => FiniteMap b a -> FiniteMap b a
|
|||||||||||||
emptyFM :: FiniteMap b a
|
|||||||||||||
findMax :: FiniteMap a b -> (a,b)
|
|||||||||||||
findMin :: FiniteMap a b -> (a,b)
|
|||||||||||||
fmToList :: FiniteMap a b -> [(a,b)]
|
|||||||||||||
|
|||||||||||||
foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
|
|||||||||||||
glueBal :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
glueVBal :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
intersectFM_C :: Ord a => (b -> d -> c) -> FiniteMap a b -> FiniteMap a d -> FiniteMap a c
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
mkBranchUnbox :: Ord a => -> (FiniteMap a b) ( -> a ( -> (FiniteMap a b) (Int -> Int)))
|
|||||||||||||
mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
sIZE_RATIO :: Int
|
|||||||||||||
sizeFM :: FiniteMap a b -> Int
|
|||||||||||||
splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
unitFM :: b -> a -> FiniteMap b a
|
import qualified FiniteMap import qualified Prelude |
|||||||||
isJust :: Maybe a -> Bool
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueBal2Mid_elt20(zzz476, zzz477, zzz478, zzz479, zzz480, zzz481, zzz482, zzz483, zzz484, zzz485, zzz486, zzz487, zzz488, Branch(zzz4890, zzz4891, zzz4892, zzz4893, zzz4894), zzz490, h, ba) → new_glueBal2Mid_elt20(zzz476, zzz477, zzz478, zzz479, zzz480, zzz481, zzz482, zzz483, zzz484, zzz485, zzz4890, zzz4891, zzz4892, zzz4893, zzz4894, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueBal2Mid_key20(zzz460, zzz461, zzz462, zzz463, zzz464, zzz465, zzz466, zzz467, zzz468, zzz469, zzz470, zzz471, zzz472, Branch(zzz4730, zzz4731, zzz4732, zzz4733, zzz4734), zzz474, h, ba) → new_glueBal2Mid_key20(zzz460, zzz461, zzz462, zzz463, zzz464, zzz465, zzz466, zzz467, zzz468, zzz469, zzz4730, zzz4731, zzz4732, zzz4733, zzz4734, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueBal2Mid_elt10(zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, zzz517, zzz518, zzz519, zzz520, zzz521, Branch(zzz5220, zzz5221, zzz5222, zzz5223, zzz5224), h, ba) → new_glueBal2Mid_elt10(zzz508, zzz509, zzz510, zzz511, zzz512, zzz513, zzz514, zzz515, zzz516, zzz517, zzz5220, zzz5221, zzz5222, zzz5223, zzz5224, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueBal2Mid_key10(zzz492, zzz493, zzz494, zzz495, zzz496, zzz497, zzz498, zzz499, zzz500, zzz501, zzz502, zzz503, zzz504, zzz505, Branch(zzz5060, zzz5061, zzz5062, zzz5063, zzz5064), h, ba) → new_glueBal2Mid_key10(zzz492, zzz493, zzz494, zzz495, zzz496, zzz497, zzz498, zzz499, zzz500, zzz501, zzz5060, zzz5061, zzz5062, zzz5063, zzz5064, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_primEqNat(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat(zzz40000, zzz30000)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_primCmpNat(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat(zzz4000000, zzz33000000)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_primMinusNat(Succ(zzz152200), Succ(zzz41000)) → new_primMinusNat(zzz152200, zzz41000)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_primPlusNat(Succ(zzz22200), Succ(zzz3001000)) → new_primPlusNat(zzz22200, zzz3001000)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_primMulNat(Succ(zzz400100), Succ(zzz300100)) → new_primMulNat(zzz400100, Succ(zzz300100))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, app(app(ty_@2, hb), hc), fa) → new_esEs3(zzz4001, zzz3001, hb, hc)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bda, app(ty_[], bdh)) → new_esEs2(zzz4001, zzz3001, bdh)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, app(app(app(ty_@3, gf), gg), gh), fa) → new_esEs1(zzz4001, zzz3001, gf, gg, gh)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, app(ty_Maybe, ge), fa) → new_esEs0(zzz4001, zzz3001, ge)
new_esEs(Left(zzz4000), Left(zzz3000), app(ty_[], bg), bb) → new_esEs2(zzz4000, zzz3000, bg)
new_esEs(Right(zzz4000), Right(zzz3000), cb, app(app(ty_@2, dc), dd)) → new_esEs3(zzz4000, zzz3000, dc, dd)
new_esEs0(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dg)) → new_esEs0(zzz4000, zzz3000, dg)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, eh, app(app(app(ty_@3, hg), hh), baa)) → new_esEs1(zzz4002, zzz3002, hg, hh, baa)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, eh, app(ty_[], bab)) → new_esEs2(zzz4002, zzz3002, bab)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), app(ty_[], bcf), bca) → new_esEs2(zzz4000, zzz3000, bcf)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, eh, app(ty_Maybe, hf)) → new_esEs0(zzz4002, zzz3002, hf)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), app(app(app(ty_@3, bcc), bcd), bce), bca) → new_esEs1(zzz4000, zzz3000, bcc, bcd, bce)
new_esEs(Left(zzz4000), Left(zzz3000), app(ty_Maybe, bc), bb) → new_esEs0(zzz4000, zzz3000, bc)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, app(ty_[], ha), fa) → new_esEs2(zzz4001, zzz3001, ha)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), app(ty_Maybe, bag)) → new_esEs0(zzz4000, zzz3000, bag)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bda, app(app(ty_@2, bea), beb)) → new_esEs3(zzz4001, zzz3001, bea, beb)
new_esEs0(Just(zzz4000), Just(zzz3000), app(app(ty_Either, de), df)) → new_esEs(zzz4000, zzz3000, de, df)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), app(app(app(ty_@3, bah), bba), bbb)) → new_esEs1(zzz4000, zzz3000, bah, bba, bbb)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), app(app(ty_Either, bae), baf)) → new_esEs(zzz4000, zzz3000, bae, baf)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), app(app(app(ty_@3, fc), fd), ff), eh, fa) → new_esEs1(zzz4000, zzz3000, fc, fd, ff)
new_esEs(Right(zzz4000), Right(zzz3000), cb, app(ty_[], db)) → new_esEs2(zzz4000, zzz3000, db)
new_esEs(Right(zzz4000), Right(zzz3000), cb, app(app(app(ty_@3, cf), cg), da)) → new_esEs1(zzz4000, zzz3000, cf, cg, da)
new_esEs(Right(zzz4000), Right(zzz3000), cb, app(app(ty_Either, cc), cd)) → new_esEs(zzz4000, zzz3000, cc, cd)
new_esEs(Left(zzz4000), Left(zzz3000), app(app(ty_@2, bh), ca), bb) → new_esEs3(zzz4000, zzz3000, bh, ca)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), app(ty_Maybe, bcb), bca) → new_esEs0(zzz4000, zzz3000, bcb)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), app(app(ty_@2, fh), ga), eh, fa) → new_esEs3(zzz4000, zzz3000, fh, ga)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, eh, app(app(ty_Either, hd), he)) → new_esEs(zzz4002, zzz3002, hd, he)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), app(app(ty_@2, bbd), bbe)) → new_esEs3(zzz4000, zzz3000, bbd, bbe)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), bbf) → new_esEs2(zzz4001, zzz3001, bbf)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, app(app(ty_Either, gc), gd), fa) → new_esEs(zzz4001, zzz3001, gc, gd)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), app(app(ty_@2, bcg), bch), bca) → new_esEs3(zzz4000, zzz3000, bcg, bch)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), app(app(ty_Either, ef), eg), eh, fa) → new_esEs(zzz4000, zzz3000, ef, eg)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bda, app(ty_Maybe, bdd)) → new_esEs0(zzz4001, zzz3001, bdd)
new_esEs(Right(zzz4000), Right(zzz3000), cb, app(ty_Maybe, ce)) → new_esEs0(zzz4000, zzz3000, ce)
new_esEs2(:(zzz4000, zzz4001), :(zzz3000, zzz3001), app(ty_[], bbc)) → new_esEs2(zzz4000, zzz3000, bbc)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bda, app(app(ty_Either, bdb), bdc)) → new_esEs(zzz4001, zzz3001, bdb, bdc)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), app(ty_[], fg), eh, fa) → new_esEs2(zzz4000, zzz3000, fg)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), app(ty_Maybe, fb), eh, fa) → new_esEs0(zzz4000, zzz3000, fb)
new_esEs(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, bd), be), bf), bb) → new_esEs1(zzz4000, zzz3000, bd, be, bf)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), app(app(ty_Either, bbg), bbh), bca) → new_esEs(zzz4000, zzz3000, bbg, bbh)
new_esEs3(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bda, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs1(zzz4001, zzz3001, bde, bdf, bdg)
new_esEs1(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), gb, eh, app(app(ty_@2, bac), bad)) → new_esEs3(zzz4002, zzz3002, bac, bad)
new_esEs0(Just(zzz4000), Just(zzz3000), app(app(ty_@2, ed), ee)) → new_esEs3(zzz4000, zzz3000, ed, ee)
new_esEs0(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dh), ea), eb)) → new_esEs1(zzz4000, zzz3000, dh, ea, eb)
new_esEs0(Just(zzz4000), Just(zzz3000), app(ty_[], ec)) → new_esEs2(zzz4000, zzz3000, ec)
new_esEs(Left(zzz4000), Left(zzz3000), app(app(ty_Either, h), ba), bb) → new_esEs(zzz4000, zzz3000, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_compare20(Just(:(zzz400000, zzz400001)), Just(:(zzz3300000, zzz3300001)), False, app(ty_[], h)) → new_compare0(zzz400001, zzz3300001, h)
new_ltEs0(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, ce), cf), cg)) → new_ltEs1(zzz400000, zzz3300000, ce, cf, cg)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), app(app(ty_@2, bbd), bbe), bag) → new_lt2(zzz400000, zzz3300000, bbd, bbe)
new_ltEs3(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, bch), bda), bca) → new_ltEs3(zzz400000, zzz3300000, bch, bda)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, app(app(app(ty_@3, fc), fd), ff), fa) → new_lt1(zzz400001, zzz3300001, fc, fd, ff)
new_compare2(zzz400000, zzz3300000, ge, gf, gg) → new_compare21(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, hd), app(ty_[], he))) → new_ltEs(zzz400001, zzz3300001, he)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), df), app(app(ty_Either, ef), eg))) → new_ltEs3(zzz400002, zzz3300002, ef, eg)
new_compare0(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), h) → new_compare0(zzz400001, zzz3300001, h)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, app(app(ty_@2, gh), ha)), df), fa)) → new_compare22(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, gh, ha), gh, ha)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, app(ty_[], baf)), bag)) → new_lt(zzz400000, zzz3300000, baf)
new_compare20(Just(Right(zzz400000)), Just(Right(zzz3300000)), False, app(app(ty_Either, bdb), app(app(ty_Either, beb), bec))) → new_ltEs3(zzz400000, zzz3300000, beb, bec)
new_compare20(Just(Right(zzz400000)), Just(Right(zzz3300000)), False, app(app(ty_Either, bdb), app(ty_[], bdc))) → new_ltEs(zzz400000, zzz3300000, bdc)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, app(app(ty_@2, ed), ee)) → new_ltEs2(zzz400002, zzz3300002, ed, ee)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, app(ty_Maybe, fb), fa) → new_lt0(zzz400001, zzz3300001, fb)
new_compare20(Just(Left(zzz400000)), Just(Left(zzz3300000)), False, app(app(ty_Either, app(ty_[], bbh)), bca)) → new_ltEs(zzz400000, zzz3300000, bbh)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, hd), app(app(app(ty_@3, hg), hh), baa))) → new_ltEs1(zzz400001, zzz3300001, hg, hh, baa)
new_compare20(Just(Just(zzz400000)), Just(Just(zzz3300000)), False, app(ty_Maybe, app(app(app(ty_@3, ce), cf), cg))) → new_ltEs1(zzz400000, zzz3300000, ce, cf, cg)
new_ltEs0(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, cd)) → new_ltEs0(zzz400000, zzz3300000, cd)
new_compare20(Just(Left(zzz400000)), Just(Left(zzz3300000)), False, app(app(ty_Either, app(ty_Maybe, bcb)), bca)) → new_ltEs0(zzz400000, zzz3300000, bcb)
new_compare3(zzz400000, zzz3300000, gh, ha) → new_compare22(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, gh, ha), gh, ha)
new_compare20(Just(Right(zzz400000)), Just(Right(zzz3300000)), False, app(app(ty_Either, bdb), app(app(ty_@2, bdh), bea))) → new_ltEs2(zzz400000, zzz3300000, bdh, bea)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, app(ty_Maybe, gd)), df), fa)) → new_lt0(zzz400000, zzz3300000, gd)
new_ltEs3(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, bcb), bca) → new_ltEs0(zzz400000, zzz3300000, bcb)
new_compare20(Just(Left(zzz400000)), Just(Left(zzz3300000)), False, app(app(ty_Either, app(app(ty_Either, bch), bda)), bca)) → new_ltEs3(zzz400000, zzz3300000, bch, bda)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), df), app(app(ty_@2, ed), ee))) → new_ltEs2(zzz400002, zzz3300002, ed, ee)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), app(app(ty_Either, hb), hc), df, fa) → new_compare23(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hb, hc), hb, hc)
new_compare20(Just(Left(zzz400000)), Just(Left(zzz3300000)), False, app(app(ty_Either, app(app(ty_@2, bcf), bcg)), bca)) → new_ltEs2(zzz400000, zzz3300000, bcf, bcg)
new_ltEs3(Right(zzz400000), Right(zzz3300000), bdb, app(app(ty_Either, beb), bec)) → new_ltEs3(zzz400000, zzz3300000, beb, bec)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), df), app(ty_Maybe, dh))) → new_ltEs0(zzz400002, zzz3300002, dh)
new_ltEs3(Right(zzz400000), Right(zzz3300000), bdb, app(ty_[], bdc)) → new_ltEs(zzz400000, zzz3300000, bdc)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), app(app(ty_Either, ga), gb)), fa)) → new_lt3(zzz400001, zzz3300001, ga, gb)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, app(app(ty_Either, bbf), bbg)), bag)) → new_lt3(zzz400000, zzz3300000, bbf, bbg)
new_lt1(zzz400000, zzz3300000, ge, gf, gg) → new_compare21(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_ltEs0(Just(zzz400000), Just(zzz3300000), app(ty_[], cc)) → new_ltEs(zzz400000, zzz3300000, cc)
new_compare23(zzz400000, zzz3300000, False, hb, hc) → new_ltEs3(zzz400000, zzz3300000, hb, hc)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, app(app(app(ty_@3, hg), hh), baa)) → new_ltEs1(zzz400001, zzz3300001, hg, hh, baa)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, app(app(ty_Either, ga), gb), fa) → new_lt3(zzz400001, zzz3300001, ga, gb)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, app(ty_[], dg)) → new_ltEs(zzz400002, zzz3300002, dg)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), app(ty_Maybe, fb)), fa)) → new_lt0(zzz400001, zzz3300001, fb)
new_primCompAux(zzz400000, zzz3300000, zzz215, app(ty_Maybe, bb)) → new_compare1(zzz400000, zzz3300000, bb)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, app(ty_[], he)) → new_ltEs(zzz400001, zzz3300001, he)
new_ltEs3(Left(zzz400000), Left(zzz3300000), app(ty_[], bbh), bca) → new_ltEs(zzz400000, zzz3300000, bbh)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), app(ty_[], gc), df, fa) → new_compare0(zzz400000, zzz3300000, gc)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, app(app(app(ty_@3, ea), eb), ec)) → new_ltEs1(zzz400002, zzz3300002, ea, eb, ec)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), app(app(ty_@2, gh), ha), df, fa) → new_compare22(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, gh, ha), gh, ha)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), app(app(app(ty_@3, bba), bbb), bbc), bag) → new_lt1(zzz400000, zzz3300000, bba, bbb, bbc)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), app(app(app(ty_@3, fc), fd), ff)), fa)) → new_lt1(zzz400001, zzz3300001, fc, fd, ff)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, app(ty_Maybe, bah)), bag)) → new_lt0(zzz400000, zzz3300000, bah)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), app(ty_Maybe, bah), bag) → new_lt0(zzz400000, zzz3300000, bah)
new_lt0(zzz4000, zzz33000, cb) → new_compare20(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, cb), cb)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), df), app(ty_[], dg))) → new_ltEs(zzz400002, zzz3300002, dg)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, app(app(ty_Either, hb), hc)), df), fa)) → new_compare23(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hb, hc), hb, hc)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, app(app(ty_Either, bad), bae)) → new_ltEs3(zzz400001, zzz3300001, bad, bae)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, hd), app(app(ty_@2, bab), bac))) → new_ltEs2(zzz400001, zzz3300001, bab, bac)
new_compare0(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), h) → new_primCompAux(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, h), h)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, app(app(app(ty_@3, bba), bbb), bbc)), bag)) → new_lt1(zzz400000, zzz3300000, bba, bbb, bbc)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), app(ty_[], baf), bag) → new_lt(zzz400000, zzz3300000, baf)
new_ltEs3(Right(zzz400000), Right(zzz3300000), bdb, app(app(app(ty_@3, bde), bdf), bdg)) → new_ltEs1(zzz400000, zzz3300000, bde, bdf, bdg)
new_primCompAux(zzz400000, zzz3300000, zzz215, app(app(ty_@2, bf), bg)) → new_compare3(zzz400000, zzz3300000, bf, bg)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), app(app(ty_@2, fg), fh)), fa)) → new_lt2(zzz400001, zzz3300001, fg, fh)
new_compare21(zzz400000, zzz3300000, False, ge, gf, gg) → new_ltEs1(zzz400000, zzz3300000, ge, gf, gg)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), app(app(app(ty_@3, ge), gf), gg), df, fa) → new_compare21(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), app(app(ty_Either, bbf), bbg), bag) → new_lt3(zzz400000, zzz3300000, bbf, bbg)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), df), app(app(app(ty_@3, ea), eb), ec))) → new_ltEs1(zzz400002, zzz3300002, ea, eb, ec)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, app(ty_[], gc)), df), fa)) → new_compare0(zzz400000, zzz3300000, gc)
new_compare20(Just(Just(zzz400000)), Just(Just(zzz3300000)), False, app(ty_Maybe, app(app(ty_@2, da), db))) → new_ltEs2(zzz400000, zzz3300000, da, db)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, hd), app(app(ty_Either, bad), bae))) → new_ltEs3(zzz400001, zzz3300001, bad, bae)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, app(app(ty_@2, fg), fh), fa) → new_lt2(zzz400001, zzz3300001, fg, fh)
new_ltEs0(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, dc), dd)) → new_ltEs3(zzz400000, zzz3300000, dc, dd)
new_ltEs(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), h) → new_primCompAux(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, h), h)
new_ltEs3(Right(zzz400000), Right(zzz3300000), bdb, app(app(ty_@2, bdh), bea)) → new_ltEs2(zzz400000, zzz3300000, bdh, bea)
new_lt3(zzz400000, zzz3300000, hb, hc) → new_compare23(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hb, hc), hb, hc)
new_compare20(Just(Just(zzz400000)), Just(Just(zzz3300000)), False, app(ty_Maybe, app(ty_Maybe, cd))) → new_ltEs0(zzz400000, zzz3300000, cd)
new_primCompAux(zzz400000, zzz3300000, zzz215, app(ty_[], ba)) → new_compare0(zzz400000, zzz3300000, ba)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, app(app(ty_Either, ef), eg)) → new_ltEs3(zzz400002, zzz3300002, ef, eg)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, de), app(ty_[], eh)), fa)) → new_lt(zzz400001, zzz3300001, eh)
new_primCompAux(zzz400000, zzz3300000, zzz215, app(app(ty_Either, bh), ca)) → new_compare4(zzz400000, zzz3300000, bh, ca)
new_ltEs3(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, bcc), bcd), bce), bca) → new_ltEs1(zzz400000, zzz3300000, bcc, bcd, bce)
new_ltEs3(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, bcf), bcg), bca) → new_ltEs2(zzz400000, zzz3300000, bcf, bcg)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, app(ty_Maybe, hf)) → new_ltEs0(zzz400001, zzz3300001, hf)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, app(app(ty_@2, bbd), bbe)), bag)) → new_lt2(zzz400000, zzz3300000, bbd, bbe)
new_compare20(Just(Just(zzz400000)), Just(Just(zzz3300000)), False, app(ty_Maybe, app(ty_[], cc))) → new_ltEs(zzz400000, zzz3300000, cc)
new_ltEs2(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, app(app(ty_@2, bab), bac)) → new_ltEs2(zzz400001, zzz3300001, bab, bac)
new_ltEs(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), h) → new_compare0(zzz400001, zzz3300001, h)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), app(ty_Maybe, gd), df, fa) → new_lt0(zzz400000, zzz3300000, gd)
new_compare20(Just(:(zzz400000, zzz400001)), Just(:(zzz3300000, zzz3300001)), False, app(ty_[], h)) → new_primCompAux(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, h), h)
new_ltEs0(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, da), db)) → new_ltEs2(zzz400000, zzz3300000, da, db)
new_compare20(Just(Right(zzz400000)), Just(Right(zzz3300000)), False, app(app(ty_Either, bdb), app(ty_Maybe, bdd))) → new_ltEs0(zzz400000, zzz3300000, bdd)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, app(ty_[], eh), fa) → new_lt(zzz400001, zzz3300001, eh)
new_compare1(zzz4000, zzz33000, cb) → new_compare20(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, cb), cb)
new_compare20(Just(@2(zzz400000, zzz400001)), Just(@2(zzz3300000, zzz3300001)), False, app(app(ty_@2, hd), app(ty_Maybe, hf))) → new_ltEs0(zzz400001, zzz3300001, hf)
new_lt(zzz400000, zzz3300000, gc) → new_compare0(zzz400000, zzz3300000, gc)
new_compare20(Just(Right(zzz400000)), Just(Right(zzz3300000)), False, app(app(ty_Either, bdb), app(app(app(ty_@3, bde), bdf), bdg))) → new_ltEs1(zzz400000, zzz3300000, bde, bdf, bdg)
new_ltEs1(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, app(ty_Maybe, dh)) → new_ltEs0(zzz400002, zzz3300002, dh)
new_compare20(Just(@3(zzz400000, zzz400001, zzz400002)), Just(@3(zzz3300000, zzz3300001, zzz3300002)), False, app(app(app(ty_@3, app(app(app(ty_@3, ge), gf), gg)), df), fa)) → new_compare21(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_primCompAux(zzz400000, zzz3300000, zzz215, app(app(app(ty_@3, bc), bd), be)) → new_compare2(zzz400000, zzz3300000, bc, bd, be)
new_compare20(Just(Just(zzz400000)), Just(Just(zzz3300000)), False, app(ty_Maybe, app(app(ty_Either, dc), dd))) → new_ltEs3(zzz400000, zzz3300000, dc, dd)
new_lt2(zzz400000, zzz3300000, gh, ha) → new_compare22(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, gh, ha), gh, ha)
new_compare22(zzz400000, zzz3300000, False, gh, ha) → new_ltEs2(zzz400000, zzz3300000, gh, ha)
new_ltEs3(Right(zzz400000), Right(zzz3300000), bdb, app(ty_Maybe, bdd)) → new_ltEs0(zzz400000, zzz3300000, bdd)
new_compare4(zzz400000, zzz3300000, hb, hc) → new_compare23(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hb, hc), hb, hc)
new_compare20(Just(Left(zzz400000)), Just(Left(zzz3300000)), False, app(app(ty_Either, app(app(app(ty_@3, bcc), bcd), bce)), bca)) → new_ltEs1(zzz400000, zzz3300000, bcc, bcd, bce)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbb)) → new_esEs4(zzz4000, zzz3000, dbb)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, ga), gb)) → new_esEs7(zzz400001, zzz3300001, ga, gb)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, bgc), bgd), bgb) → new_esEs7(zzz4000, zzz3000, bgc, bgd)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, dab)) → new_ltEs11(zzz40000, zzz330000, dab)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, cef), ceg)) → new_esEs6(zzz4002, zzz3002, cef, ceg)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(ty_Maybe, bdd)) → new_ltEs8(zzz400000, zzz3300000, bdd)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs5(zzz4000, zzz3000, cgb, cgc, cgd)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, bgf), bgb) → new_esEs4(zzz4000, zzz3000, bgf)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], he)) → new_ltEs10(zzz400001, zzz3300001, he)
new_compare([], :(zzz3300000, zzz3300001), h) → LT
new_compare10(zzz400000, zzz3300000, True, gh, ha) → LT
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, fc), fd), ff)) → new_lt8(zzz400001, zzz3300001, fc, fd, ff)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, ce), cf), cg)) → new_ltEs13(zzz400000, zzz3300000, ce, cf, cg)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cga)) → new_esEs4(zzz4000, zzz3000, cga)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), daf) → False
new_esEs4(Just(zzz4000), Nothing, daf) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, bba), bbb), bbc)) → new_lt8(zzz400000, zzz3300000, bba, bbb, bbc)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, bgg), bgh), bha), bgb) → new_esEs5(zzz4000, zzz3000, bgg, bgh, bha)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], h) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, cfb)) → new_esEs13(zzz400001, zzz3300001, cfb)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, ccg)) → new_esEs4(zzz4001, zzz3001, ccg)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, bca) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], cee)) → new_esEs10(zzz4002, zzz3002, cee)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, hf)) → new_ltEs8(zzz400001, zzz3300001, hf)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, bb)) → new_compare13(zzz400000, zzz3300000, bb)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, hb), hc)) → new_lt18(zzz400000, zzz3300000, hb, hc)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, fb)) → new_esEs4(zzz400001, zzz3300001, fb)
new_compare26(zzz400000, zzz3300000, False, hb, hc) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, hb, hc), hb, hc)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(ty_[], cae)) → new_esEs10(zzz4000, zzz3000, cae)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, bca) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(app(app(ty_@3, cab), cac), cad)) → new_esEs5(zzz4000, zzz3000, cab, cac, cad)
new_esEs26(zzz400000, zzz3300000, app(ty_[], baf)) → new_esEs10(zzz400000, zzz3300000, baf)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, ccf)) → new_esEs13(zzz4001, zzz3001, ccf)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, ga), gb)) → new_lt18(zzz400001, zzz3300001, ga, gb)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, bah)) → new_lt15(zzz400000, zzz3300000, bah)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, cbf), cbg), cbh)) → new_esEs5(zzz4000, zzz3000, cbf, cbg, cbh)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, bah)) → new_esEs4(zzz400000, zzz3300000, bah)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, cdd), cde)) → new_esEs6(zzz4001, zzz3001, cdd, cde)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(app(ty_@2, bdh), bea)) → new_ltEs4(zzz400000, zzz3300000, bdh, bea)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, hb), hc)) → new_esEs7(zzz400000, zzz3300000, hb, hc)
new_lt13(zzz400001, zzz3300001, app(ty_[], eh)) → new_lt4(zzz400001, zzz3300001, eh)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, bca) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], chg)) → new_esEs10(zzz4001, zzz3001, chg)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], cca)) → new_esEs10(zzz4000, zzz3000, cca)
new_compare27(Just(zzz40000), Just(zzz330000), False, cb) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, cb), cb)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], bhb), bgb) → new_esEs10(zzz4000, zzz3000, bhb)
new_esEs7(Left(zzz4000), Right(zzz3000), bhe, bgb) → False
new_esEs7(Right(zzz4000), Left(zzz3000), bhe, bgb) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], ba)) → new_compare(zzz400000, zzz3300000, ba)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, cb) → new_esEs8(new_compare13(zzz4000, zzz33000, cb), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, hd), bag)) → new_ltEs4(zzz40000, zzz330000, hd, bag)
new_lt4(zzz400000, zzz3300000, gc) → new_esEs8(new_compare(zzz400000, zzz3300000, gc), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, h) → new_fsEs(new_compare(zzz40000, zzz330000, h))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, bbd), bbe)) → new_lt17(zzz400000, zzz3300000, bbd, bbe)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, cbc), cbd)) → new_esEs7(zzz4000, zzz3000, cbc, cbd)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, bab), bac)) → new_ltEs4(zzz400001, zzz3300001, bab, bac)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, dab) → new_fsEs(new_compare5(zzz40000, zzz330000, dab))
new_ltEs8(Nothing, Just(zzz3300000), ceh) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, cb) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, chh), daa)) → new_esEs6(zzz4001, zzz3001, chh, daa)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), hd, bag) → new_pePe(new_lt20(zzz400000, zzz3300000, hd), new_asAs(new_esEs26(zzz400000, zzz3300000, hd), new_ltEs20(zzz400001, zzz3300001, bag)))
new_compare25(zzz400000, zzz3300000, True, ge, gf, gg) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, cb)) → new_esEs4(zzz4000, zzz3000, cb)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, cdh)) → new_esEs13(zzz4002, zzz3002, cdh)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, hb, hc) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hb, hc), hb, hc)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, chb)) → new_esEs13(zzz4001, zzz3001, chb)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cff), cfg)) → new_esEs7(zzz4000, zzz3000, cff, cfg)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cgf), cgg)) → new_esEs6(zzz4000, zzz3000, cgf, cgg)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, cbe)) → new_esEs13(zzz4000, zzz3000, cbe)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, dac)) → new_esEs13(zzz400000, zzz3300000, dac)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], bbh), bca) → new_ltEs10(zzz400000, zzz3300000, bbh)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, bgb) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), h) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, h), h)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dbf)) → new_esEs10(zzz4000, zzz3000, dbf)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, dc), dd)) → new_ltEs15(zzz400000, zzz3300000, dc, dd)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, dad)) → new_ltEs11(zzz400001, zzz3300001, dad)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(app(ty_Either, bhf), bhg)) → new_esEs7(zzz4000, zzz3000, bhf, bhg)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], cc)) → new_ltEs10(zzz400000, zzz3300000, cc)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, bca) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], gc)) → new_lt4(zzz400000, zzz3300000, gc)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, cb) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, h) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, h))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bed)) → new_lt5(zzz400000, zzz3300000, bed)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(app(app(ty_@3, bde), bdf), bdg)) → new_ltEs13(zzz400000, zzz3300000, bde, bdf, bdg)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(ty_Ratio, bhh)) → new_esEs13(zzz4000, zzz3000, bhh)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, cb) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, bge), bgb) → new_esEs13(zzz4000, zzz3000, bge)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, bhc), bhd), bgb) → new_esEs6(zzz4000, zzz3000, bhc, bhd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, bfd), bfe), bff)) → new_esEs5(zzz4000, zzz3000, bfd, bfe, bff)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, hb, hc) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, bca) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), de, df, fa) → new_pePe(new_lt14(zzz400000, zzz3300000, de), new_asAs(new_esEs22(zzz400000, zzz3300000, de), new_pePe(new_lt13(zzz400001, zzz3300001, df), new_asAs(new_esEs23(zzz400001, zzz3300001, df), new_ltEs18(zzz400002, zzz3300002, fa)))))
new_compare24(zzz400000, zzz3300000, True, gh, ha) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, bcb), bca) → new_ltEs8(zzz400000, zzz3300000, bcb)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, ge), gf), gg)) → new_esEs5(zzz400000, zzz3300000, ge, gf, gg)
new_compare([], [], h) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, bf), bg)) → new_compare16(zzz400000, zzz3300000, bf, bg)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, bbf), bbg)) → new_esEs7(zzz400000, zzz3300000, bbf, bbg)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), beg) → False
new_esEs10(:(zzz4000, zzz4001), [], beg) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dag), dah)) → new_esEs7(zzz4000, zzz3000, dag, dah)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, gd)) → new_esEs4(zzz400000, zzz3300000, gd)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(app(ty_@2, caf), cag)) → new_esEs6(zzz4000, zzz3000, caf, cag)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, chc)) → new_esEs4(zzz4001, zzz3001, chc)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, cfa)) → new_ltEs11(zzz400000, zzz3300000, cfa)
new_compare10(zzz400000, zzz3300000, False, gh, ha) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), cfd, cfe) → new_asAs(new_esEs24(zzz4000, zzz3000, cfd), new_esEs25(zzz4001, zzz3001, cfe))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, bee)) → new_compare5(zzz400000, zzz3300000, bee)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, ef), eg)) → new_ltEs15(zzz400002, zzz3300002, ef, eg)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], beg) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, bca) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, bgb) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, ccb), ccc)) → new_esEs6(zzz4000, zzz3000, ccb, ccc)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbc), dbd), dbe)) → new_esEs5(zzz4000, zzz3000, dbc, dbd, dbe)
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, hb, hc) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Nothing, ceh) → False
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, bfc)) → new_esEs4(zzz4000, zzz3000, bfc)
new_compare24(zzz400000, zzz3300000, False, gh, ha) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, gh, ha), gh, ha)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, dac)) → new_lt5(zzz400000, zzz3300000, dac)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, ge), gf), gg)) → new_lt8(zzz400000, zzz3300000, ge, gf, gg)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bed)) → new_esEs13(zzz400000, zzz3300000, bed)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cfh)) → new_esEs13(zzz4000, zzz3000, cfh)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dbg), dbh)) → new_esEs6(zzz4000, zzz3000, dbg, dbh)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, bgb) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, gh), ha)) → new_esEs6(zzz400000, zzz3300000, gh, ha)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, ge, gf, gg) → new_esEs8(new_compare14(zzz400000, zzz3300000, ge, gf, gg), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, cfc)) → new_ltEs11(zzz400002, zzz3300002, cfc)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, app(ty_Maybe, caa)) → new_esEs4(zzz4000, zzz3000, caa)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, bc), bd), be)) → new_compare14(zzz400000, zzz3300000, bc, bd, be)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, cb) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, cb), cb)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, de), df), fa)) → new_ltEs13(zzz40000, zzz330000, de, df, fa)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), beg) → new_asAs(new_esEs11(zzz4000, zzz3000, beg), new_esEs10(zzz4001, zzz3001, beg))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, gh, ha) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, gh, ha), gh, ha)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, hb, hc) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, bgb) → new_esEs18(zzz4000, zzz3000)
new_compare110(zzz195, zzz196, True, bef) → LT
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, bgb) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], h)) → new_ltEs10(zzz40000, zzz330000, h)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, fg), fh)) → new_esEs6(zzz400001, zzz3300001, fg, fh)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, cfb)) → new_lt5(zzz400001, zzz3300001, cfb)
new_esEs23(zzz400001, zzz3300001, app(ty_[], eh)) → new_esEs10(zzz400001, zzz3300001, eh)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, bdb), bca)) → new_ltEs15(zzz40000, zzz330000, bdb, bca)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, fg), fh)) → new_lt17(zzz400001, zzz3300001, fg, fh)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, cch), cda), cdb)) → new_esEs5(zzz4001, zzz3001, cch, cda, cdb)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, ceb), cec), ced)) → new_esEs5(zzz4002, zzz3002, ceb, cec, ced)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), bhe, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), cah, cba, cbb) → new_asAs(new_esEs19(zzz4000, zzz3000, cah), new_asAs(new_esEs20(zzz4001, zzz3001, cba), new_esEs21(zzz4002, zzz3002, cbb)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, bgb) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, bcc), bcd), bce), bca) → new_ltEs13(zzz400000, zzz3300000, bcc, bcd, bce)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, ceh)) → new_ltEs8(zzz40000, zzz330000, ceh)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, bbf), bbg)) → new_lt18(zzz400000, zzz3300000, bbf, bbg)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], cdc)) → new_esEs10(zzz4001, zzz3001, cdc)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, daf) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, bgb) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dba)) → new_esEs13(zzz4000, zzz3000, dba)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, hb, hc) → new_esEs8(new_compare17(zzz400000, zzz3300000, hb, hc), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, cdf), cdg)) → new_esEs7(zzz4002, zzz3002, cdf, cdg)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, ea), eb), ec)) → new_ltEs13(zzz400002, zzz3300002, ea, eb, ec)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, fb)) → new_lt15(zzz400001, zzz3300001, fb)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, ge, gf, gg) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, bef) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, gh), ha)) → new_lt17(zzz400000, zzz3300000, gh, ha)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, hg), hh), baa)) → new_ltEs13(zzz400001, zzz3300001, hg, hh, baa)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, beh), bfa)) → new_esEs7(zzz4000, zzz3000, beh, bfa)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, gd)) → new_lt15(zzz400000, zzz3300000, gd)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], dg)) → new_ltEs10(zzz400002, zzz3300002, dg)
new_esEs24(zzz4000, zzz3000, app(ty_[], cge)) → new_esEs10(zzz4000, zzz3000, cge)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, cea)) → new_esEs4(zzz4002, zzz3002, cea)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, ccd), cce)) → new_esEs7(zzz4001, zzz3001, ccd, cce)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, bad), bae)) → new_ltEs15(zzz400001, zzz3300001, bad, bae)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, bfh), bga)) → new_esEs6(zzz4000, zzz3000, bfh, bga)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(ty_[], bdc)) → new_ltEs10(zzz400000, zzz3300000, bdc)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, cd)) → new_ltEs8(zzz400000, zzz3300000, cd)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), dae) → new_asAs(new_esEs27(zzz4000, zzz3000, dae), new_esEs28(zzz4001, zzz3001, dae))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, ge, gf, gg) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, da), db)) → new_ltEs4(zzz400000, zzz3300000, da, db)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], gc)) → new_esEs10(zzz400000, zzz3300000, gc)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_lt20(zzz400000, zzz3300000, app(ty_[], baf)) → new_lt4(zzz400000, zzz3300000, baf)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, bh), ca)) → new_compare17(zzz400000, zzz3300000, bh, ca)
new_compare25(zzz400000, zzz3300000, False, ge, gf, gg) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, ge, gf, gg), ge, gf, gg)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, ge, gf, gg) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, bgb) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, bfb)) → new_esEs13(zzz4000, zzz3000, bfb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, dca), bca) → new_ltEs11(zzz400000, zzz3300000, dca)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, dh)) → new_ltEs8(zzz400002, zzz3300002, dh)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, ceh) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, chd), che), chf)) → new_esEs5(zzz4001, zzz3001, chd, che, chf)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, bca) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(app(ty_Either, beb), bec)) → new_ltEs15(zzz400000, zzz3300000, beb, bec)
new_compare27(zzz4000, zzz33000, True, cb) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, app(ty_Ratio, dcb)) → new_ltEs11(zzz400000, zzz3300000, dcb)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs5(zzz400000, zzz3300000, bba, bbb, bbc)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], bfg)) → new_esEs10(zzz4000, zzz3000, bfg)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), bdb, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, bbd), bbe)) → new_esEs6(zzz400000, zzz3300000, bbd, bbe)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, fc), fd), ff)) → new_esEs5(zzz400001, zzz3300001, fc, fd, ff)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, bch), bda), bca) → new_ltEs15(zzz400000, zzz3300000, bch, bda)
new_ltEs15(Left(zzz400000), Right(zzz3300000), bdb, bca) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, ed), ee)) → new_ltEs4(zzz400002, zzz3300002, ed, ee)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, gh, ha) → new_esEs8(new_compare16(zzz400000, zzz3300000, gh, ha), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_lt5(zzz400000, zzz3300000, bed) → new_esEs8(new_compare5(zzz400000, zzz3300000, bed), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, cgh), cha)) → new_esEs7(zzz4001, zzz3001, cgh, cha)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), bdb, bca) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, bcf), bcg), bca) → new_ltEs4(zzz400000, zzz3300000, bcf, bcg)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, bca) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Integer)
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_esEs24(x0, x1, ty_Ordering)
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3)
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_lt14(x0, x1, ty_Double)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_compare([], :(x0, x1), x2)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_compare114(x0, x1, True, x2, x3)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_compare10(x0, x1, True, x2, x3)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Zero, x0)
new_pePe(True, x0)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_lt13(x0, x1, ty_Ordering)
new_compare24(x0, x1, True, x2, x3)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs12(False, False)
new_ltEs10(x0, x1, x2)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_lt11(x0, x1)
new_compare111(x0, x1, False)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_Integer)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(GT, GT)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Nothing, Just(x0), x1)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare25(x0, x1, True, x2, x3, x4)
new_lt10(x0, x1)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_esEs19(x0, x1, ty_Int)
new_ltEs7(x0, x1)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_compare27(Just(x0), Just(x1), False, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_ltEs18(x0, x1, app(ty_[], x2))
new_compare16(x0, x1, x2, x3)
new_ltEs18(x0, x1, ty_Int)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_lt8(x0, x1, x2, x3, x4)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, app(ty_[], x2))
new_lt15(x0, x1, x2)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs6(LT, EQ)
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_lt17(x0, x1, x2, x3)
new_esEs11(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs18(x0, x1)
new_esEs19(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs22(x0, x1, ty_Char)
new_lt5(x0, x1, x2)
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Char)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_primMulNat0(Zero, Zero)
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_lt19(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_compare112(x0, x1, True, x2, x3, x4)
new_primMulNat0(Zero, Succ(x0))
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, app(ty_[], x2))
new_compare11(x0, x1, ty_Double)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_Char)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(x0, x1, x2)
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_esEs26(x0, x1, ty_Integer)
new_lt14(x0, x1, app(ty_Ratio, x2))
new_esEs14(@0, @0)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare12(Float(x0, x1), Float(x2, x3))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Double)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs23(x0, x1, ty_@0)
new_compare27(Nothing, Just(x0), False, x1)
new_esEs11(x0, x1, ty_Int)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs23(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, ty_Integer)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_pePe(False, x0)
new_lt14(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Char)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, False, x2)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, ty_Double)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs18(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_primMulNat0(Succ(x0), Zero)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare112(x0, x1, False, x2, x3, x4)
new_compare([], [], x0)
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Zero)
new_compare27(Just(x0), Nothing, False, x1)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs20(x0, x1, ty_Int)
new_esEs10(:(x0, x1), [], x2)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare10(x0, x1, False, x2, x3)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs9(x0, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Bool)
new_lt16(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_compare18(Integer(x0), Integer(x1))
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs25(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_ltEs8(Just(x0), Nothing, x1)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_lt13(x0, x1, ty_Int)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt14(x0, x1, ty_Integer)
new_compare(:(x0, x1), [], x2)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqNat0(Succ(x0), Succ(x1))
new_esEs24(x0, x1, ty_Char)
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs26(x0, x1, ty_Ordering)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_compare17(x0, x1, x2, x3)
new_esEs24(x0, x1, ty_Int)
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_asAs(False, x0)
new_esEs4(Just(x0), Just(x1), ty_Double)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare14(x0, x1, x2, x3, x4)
new_compare113(x0, x1, True)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_lt13(x0, x1, ty_Float)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_primCmpNat0(Zero, Succ(x0))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_lt4(x0, x1, x2)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Bool)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_esEs22(x0, x1, ty_Double)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs25(x0, x1, ty_Bool)
new_compare25(x0, x1, False, x2, x3, x4)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primCompAux1(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Int)
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_compare13(x0, x1, x2)
new_esEs20(x0, x1, ty_Char)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Char)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_compare27(Nothing, Nothing, False, x0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs22(x0, x1, ty_Bool)
new_compare110(x0, x1, True, x2)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt13(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Char)
new_esEs25(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs4(Just(x0), Nothing, x1)
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs12(True, False)
new_esEs12(False, True)
new_esEs21(x0, x1, app(ty_[], x2))
new_compare28(x0, x1, True)
new_lt18(x0, x1, x2, x3)
new_sr(x0, x1)
new_compare26(x0, x1, True, x2, x3)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare11(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs21(x0, x1, ty_Integer)
new_compare27(x0, x1, True, x2)
new_ltEs14(False, False)
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1)
new_esEs25(x0, x1, ty_Int)
new_esEs11(x0, x1, ty_Ordering)
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_esEs23(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_primCompAux0(x0, EQ)
new_esEs4(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10([], :(x0, x1), x2)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs21(x0, x1, ty_@0)
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_compare24(x0, x1, False, x2, x3)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_lt14(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_lt13(x0, x1, app(ty_[], x2))
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_compare114(x0, x1, False, x2, x3)
new_lt14(x0, x1, ty_@0)
new_esEs10([], [], x0)
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs22(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs4(Nothing, Just(x0), x1)
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_compare(:(x0, x1), :(x2, x3), x4)
new_esEs19(x0, x1, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs21(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_ltEs12(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_compare11(x0, x1, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs8(Nothing, Nothing, x0)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_deleteMin(zzz770, zzz771, zzz772, Branch(zzz7730, zzz7731, zzz7732, zzz7733, zzz7734), zzz774, h, ba) → new_deleteMin(zzz7730, zzz7731, zzz7732, zzz7733, zzz7734, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_deleteMax(zzz780, zzz781, zzz782, zzz783, Branch(zzz7840, zzz7841, zzz7842, zzz7843, zzz7844), h, ba) → new_deleteMax(zzz7840, zzz7841, zzz7842, zzz7843, zzz7844, h, ba)
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_lt9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_lt9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_esEs8(EQ, EQ) → True
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primPlusNat1(Zero, Zero) → Zero
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_primMulNat0(Zero, Zero) → Zero
new_esEs8(GT, GT) → True
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_esEs8(LT, EQ) → False
new_esEs8(EQ, LT) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_esEs8(LT, LT) → True
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_lt9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_lt9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_lt9(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_lt9(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_compare7(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sIZE_RATIO
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_glueVBal3Size_r(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_glueVBal3Size_l(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, h, ba) → new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), new_sizeFM(zzz780, zzz781, zzz782, zzz783, zzz784, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), new_sizeFM(zzz770, zzz771, zzz772, zzz773, zzz774, h, ba)), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, False, h, ba) → new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz772), zzz782), LT), h, ba)
new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), zzz773, h, ba)
Used ordering: Polynomial interpretation [25]:
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
POL(Branch(x1, x2, x3, x4, x5)) = 1 + x2 + x3 + x4 + x5
POL(EQ) = 0
POL(False) = 1
POL(GT) = 0
POL(LT) = 0
POL(Neg(x1)) = 1 + x1
POL(Pos(x1)) = 1 + x1
POL(Succ(x1)) = 1
POL(True) = 1
POL(Zero) = 1
POL(new_esEs8(x1, x2)) = 1
POL(new_glueVBal(x1, x2, x3, x4)) = x1 + x2
POL(new_glueVBal3GlueVBal1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)) = x10 + x11 + x2 + x3 + x4 + x5
POL(new_glueVBal3GlueVBal2(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)) = 1 + x10 + x11 + x2 + x3 + x4 + x5 + x7 + x8 + x9
POL(new_primCmpInt(x1, x2)) = 0
POL(new_primCmpNat0(x1, x2)) = 0
POL(new_primMulInt(x1, x2)) = x1 + x2
POL(new_primMulNat0(x1, x2)) = 0
POL(new_primPlusNat0(x1, x2)) = 0
POL(new_primPlusNat1(x1, x2)) = x1 + x2
new_esEs8(GT, LT) → False
new_esEs8(LT, LT) → True
new_esEs8(EQ, LT) → False
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_glueVBal(Branch(zzz780, zzz781, zzz782, zzz783, zzz784), Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba) → new_glueVBal3GlueVBal2(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz782), zzz772), LT), h, ba)
new_glueVBal3GlueVBal1(zzz770, zzz771, zzz772, zzz773, zzz774, zzz780, zzz781, zzz782, zzz783, zzz784, True, h, ba) → new_glueVBal(zzz784, Branch(zzz770, zzz771, zzz772, zzz773, zzz774), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_addToFM_C2(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_addToFM_C1(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_gt(zzz330, zzz3440, h), h, ba)
new_addToFM_C(Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), zzz330, zzz331, h, ba) → new_addToFM_C2(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt15(zzz330, zzz3440, h), h, ba)
new_addToFM_C1(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_addToFM_C(zzz3444, zzz330, zzz331, h, ba)
new_addToFM_C2(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_addToFM_C(zzz3443, zzz330, zzz331, h, ba)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbf)) → new_esEs4(zzz4000, zzz3000, dbf)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_esEs7(zzz400001, zzz3300001, bfg, bfh)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, fb), fc), fa) → new_esEs7(zzz4000, zzz3000, fb, fc)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, cdd)) → new_ltEs11(zzz40000, zzz330000, cdd)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, bea), beb)) → new_esEs6(zzz4002, zzz3002, bea, beb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Maybe, dab)) → new_ltEs8(zzz400000, zzz3300000, dab)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs5(zzz4000, zzz3000, cbd, cbe, cbf)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, ff), fa) → new_esEs4(zzz4000, zzz3000, ff)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], cfc)) → new_ltEs10(zzz400001, zzz3300001, cfc)
new_compare([], :(zzz3300000, zzz3300001), bf) → LT
new_compare10(zzz400000, zzz3300000, True, bd, be) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, bhg), bhh), caa)) → new_ltEs13(zzz400000, zzz3300000, bhg, bhh, caa)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_lt8(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cbc)) → new_esEs4(zzz4000, zzz3000, cbc)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), dbb) → False
new_esEs4(Just(zzz4000), Nothing, dbb) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_lt8(zzz400000, zzz3300000, ced, cee, cef)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, fg), fh), ga), fa) → new_esEs5(zzz4000, zzz3000, fg, fh, ga)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bf) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_esEs13(zzz400001, zzz3300001, beh)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, bcb)) → new_esEs4(zzz4001, zzz3001, bcb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, cdh) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bdh)) → new_esEs10(zzz4002, zzz3002, bdh)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, cfe)) → new_ltEs8(zzz400001, zzz3300001, cfe)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, ca)) → new_compare13(zzz400000, zzz3300000, ca)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_lt18(zzz400000, zzz3300000, hh, baa)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_esEs4(zzz400001, zzz3300001, bfa)
new_compare26(zzz400000, zzz3300000, False, hh, baa) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_[], he)) → new_esEs10(zzz4000, zzz3000, he)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, cdh) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(app(ty_@3, hb), hc), hd)) → new_esEs5(zzz4000, zzz3000, hb, hc, hd)
new_esEs26(zzz400000, zzz3300000, app(ty_[], cea)) → new_esEs10(zzz400000, zzz3300000, cea)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, bca)) → new_esEs13(zzz4001, zzz3001, bca)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_lt18(zzz400001, zzz3300001, bfg, bfh)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_lt15(zzz400000, zzz3300000, cec)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs5(zzz4000, zzz3000, bba, bbb, bbc)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_esEs4(zzz400000, zzz3300000, cec)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, bcg), bch)) → new_esEs6(zzz4001, zzz3001, bcg, bch)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_@2, daf), dag)) → new_ltEs4(zzz400000, zzz3300000, daf, dag)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_esEs7(zzz400000, zzz3300000, hh, baa)
new_lt13(zzz400001, zzz3300001, app(ty_[], beg)) → new_lt4(zzz400001, zzz3300001, beg)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, cdh) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], cda)) → new_esEs10(zzz4001, zzz3001, cda)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], bbd)) → new_esEs10(zzz4000, zzz3000, bbd)
new_compare27(Just(zzz40000), Just(zzz330000), False, bah) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, bah), bah)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], gb), fa) → new_esEs10(zzz4000, zzz3000, gb)
new_esEs7(Left(zzz4000), Right(zzz3000), ge, fa) → False
new_esEs7(Right(zzz4000), Left(zzz3000), ge, fa) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], bg)) → new_compare(zzz400000, zzz3300000, bg)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, bah) → new_esEs8(new_compare13(zzz4000, zzz33000, bah), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, cde), cdf)) → new_ltEs4(zzz40000, zzz330000, cde, cdf)
new_lt4(zzz400000, zzz3300000, bb) → new_esEs8(new_compare(zzz400000, zzz3300000, bb), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bf) → new_fsEs(new_compare(zzz40000, zzz330000, bf))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_lt17(zzz400000, zzz3300000, ceg, ceh)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, bae), baf)) → new_esEs7(zzz4000, zzz3000, bae, baf)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, cga), cgb)) → new_ltEs4(zzz400001, zzz3300001, cga, cgb)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, cdd) → new_fsEs(new_compare5(zzz40000, zzz330000, cdd))
new_ltEs8(Nothing, Just(zzz3300000), bhc) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, bah) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, cdb), cdc)) → new_esEs6(zzz4001, zzz3001, cdb, cdc)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), cde, cdf) → new_pePe(new_lt20(zzz400000, zzz3300000, cde), new_asAs(new_esEs26(zzz400000, zzz3300000, cde), new_ltEs20(zzz400001, zzz3300001, cdf)))
new_compare25(zzz400000, zzz3300000, True, db, dc, dd) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, bah)) → new_esEs4(zzz4000, zzz3000, bah)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bdc)) → new_esEs13(zzz4002, zzz3002, bdc)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, hh, baa) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, ccd)) → new_esEs13(zzz4001, zzz3001, ccd)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cah), cba)) → new_esEs7(zzz4000, zzz3000, cah, cba)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cbh), cca)) → new_esEs6(zzz4000, zzz3000, cbh, cca)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, bag)) → new_esEs13(zzz4000, zzz3000, bag)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_esEs13(zzz400000, zzz3300000, ceb)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cgf), cdh) → new_ltEs10(zzz400000, zzz3300000, cgf)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, fa) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bf) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bf), bf)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dcb)) → new_esEs10(zzz4000, zzz3000, dcb)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, cad), cae)) → new_ltEs15(zzz400000, zzz3300000, cad, cae)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, cfd)) → new_ltEs11(zzz400001, zzz3300001, cfd)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_Either, gf), gg)) → new_esEs7(zzz4000, zzz3000, gf, gg)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], bhd)) → new_ltEs10(zzz400000, zzz3300000, bhd)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, cdh) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], bb)) → new_lt4(zzz400000, zzz3300000, bb)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, bah) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bf) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bf))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_lt5(zzz400000, zzz3300000, bc)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(app(ty_@3, dac), dad), dae)) → new_ltEs13(zzz400000, zzz3300000, dac, dad, dae)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Ratio, gh)) → new_esEs13(zzz4000, zzz3000, gh)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, bah) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, fd), fa) → new_esEs13(zzz4000, zzz3000, fd)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, gc), gd), fa) → new_esEs6(zzz4000, zzz3000, gc, gd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ec), ed), ee)) → new_esEs5(zzz4000, zzz3000, ec, ed, ee)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, hh, baa) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, cdh) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, bd, be) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bec, bed, bee) → new_pePe(new_lt14(zzz400000, zzz3300000, bec), new_asAs(new_esEs22(zzz400000, zzz3300000, bec), new_pePe(new_lt13(zzz400001, zzz3300001, bed), new_asAs(new_esEs23(zzz400001, zzz3300001, bed), new_ltEs18(zzz400002, zzz3300002, bee)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cgh), cdh) → new_ltEs8(zzz400000, zzz3300000, cgh)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_esEs5(zzz400000, zzz3300000, db, dc, dd)
new_compare([], [], bf) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, ce), cf)) → new_compare16(zzz400000, zzz3300000, ce, cf)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_esEs7(zzz400000, zzz3300000, cfa, cfb)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), df) → False
new_esEs10(:(zzz4000, zzz4001), [], df) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dbc), dbd)) → new_esEs7(zzz4000, zzz3000, dbc, dbd)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_@2, hf), hg)) → new_esEs6(zzz4000, zzz3000, hf, hg)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_esEs4(zzz400000, zzz3300000, bef)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, cce)) → new_esEs4(zzz4001, zzz3001, cce)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, bhe)) → new_ltEs11(zzz400000, zzz3300000, bhe)
new_compare10(zzz400000, zzz3300000, False, bd, be) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), caf, cag) → new_asAs(new_esEs24(zzz4000, zzz3000, caf), new_esEs25(zzz4001, zzz3001, cag))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, bh)) → new_compare5(zzz400000, zzz3300000, bh)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, bha), bhb)) → new_ltEs15(zzz400002, zzz3300002, bha, bhb)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], df) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, cdh) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, fa) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz4000, zzz3000, bbe, bbf)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbg), dbh), dca)) → new_esEs5(zzz4000, zzz3000, dbg, dbh, dca)
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, hh, baa) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bhc) → False
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, eb)) → new_esEs4(zzz4000, zzz3000, eb)
new_compare24(zzz400000, zzz3300000, False, bd, be) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, bd, be), bd, be)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_lt5(zzz400000, zzz3300000, ceb)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_lt8(zzz400000, zzz3300000, db, dc, dd)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_esEs13(zzz400000, zzz3300000, bc)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cbb)) → new_esEs13(zzz4000, zzz3000, cbb)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dcc), dcd)) → new_esEs6(zzz4000, zzz3000, dcc, dcd)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, fa) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_esEs6(zzz400000, zzz3300000, bd, be)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, db, dc, dd) → new_esEs8(new_compare14(zzz400000, zzz3300000, db, dc, dd), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, bgb)) → new_ltEs11(zzz400002, zzz3300002, bgb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Maybe, ha)) → new_esEs4(zzz4000, zzz3000, ha)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cb), cc), cd)) → new_compare14(zzz400000, zzz3300000, cb, cc, cd)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, bah) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, bah), bah)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs13(zzz40000, zzz330000, bec, bed, bee)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), df) → new_asAs(new_esEs11(zzz4000, zzz3000, df), new_esEs10(zzz4001, zzz3001, df))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, bd, be) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, bd, be), bd, be)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, hh, baa) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, fa) → new_esEs18(zzz4000, zzz3000)
new_compare110(zzz195, zzz196, True, de) → LT
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, fa) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bf)) → new_ltEs10(zzz40000, zzz330000, bf)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_esEs6(zzz400001, zzz3300001, bfe, bff)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_lt5(zzz400001, zzz3300001, beh)
new_esEs23(zzz400001, zzz3300001, app(ty_[], beg)) → new_esEs10(zzz400001, zzz3300001, beg)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, cdg), cdh)) → new_ltEs15(zzz40000, zzz330000, cdg, cdh)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_lt17(zzz400001, zzz3300001, bfe, bff)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, bcc), bcd), bce)) → new_esEs5(zzz4001, zzz3001, bcc, bcd, bce)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs5(zzz4002, zzz3002, bde, bdf, bdg)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), bab, bac, bad) → new_asAs(new_esEs19(zzz4000, zzz3000, bab), new_asAs(new_esEs20(zzz4001, zzz3001, bac), new_esEs21(zzz4002, zzz3002, bad)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, fa) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, cha), chb), chc), cdh) → new_ltEs13(zzz400000, zzz3300000, cha, chb, chc)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bhc)) → new_ltEs8(zzz40000, zzz330000, bhc)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_lt18(zzz400000, zzz3300000, cfa, cfb)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], bcf)) → new_esEs10(zzz4001, zzz3001, bcf)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, dbb) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, fa) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dbe)) → new_esEs13(zzz4000, zzz3000, dbe)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, hh, baa) → new_esEs8(new_compare17(zzz400000, zzz3300000, hh, baa), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bda), bdb)) → new_esEs7(zzz4002, zzz3002, bda, bdb)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, bgd), bge), bgf)) → new_ltEs13(zzz400002, zzz3300002, bgd, bge, bgf)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_lt15(zzz400001, zzz3300001, bfa)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, db, dc, dd) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, de) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_lt17(zzz400000, zzz3300000, bd, be)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, cff), cfg), cfh)) → new_ltEs13(zzz400001, zzz3300001, cff, cfg, cfh)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, dg), dh)) → new_esEs7(zzz4000, zzz3000, dg, dh)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_lt15(zzz400000, zzz3300000, bef)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], bga)) → new_ltEs10(zzz400002, zzz3300002, bga)
new_esEs24(zzz4000, zzz3000, app(ty_[], cbg)) → new_esEs10(zzz4000, zzz3000, cbg)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, bdd)) → new_esEs4(zzz4002, zzz3002, bdd)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, bbg), bbh)) → new_esEs7(zzz4001, zzz3001, bbg, bbh)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, cgc), cgd)) → new_ltEs15(zzz400001, zzz3300001, cgc, cgd)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, eg), eh)) → new_esEs6(zzz4000, zzz3000, eg, eh)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_[], chh)) → new_ltEs10(zzz400000, zzz3300000, chh)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, bhf)) → new_ltEs8(zzz400000, zzz3300000, bhf)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cge) → new_asAs(new_esEs27(zzz4000, zzz3000, cge), new_esEs28(zzz4001, zzz3001, cge))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, db, dc, dd) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, cab), cac)) → new_ltEs4(zzz400000, zzz3300000, cab, cac)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], bb)) → new_esEs10(zzz400000, zzz3300000, bb)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_lt20(zzz400000, zzz3300000, app(ty_[], cea)) → new_lt4(zzz400000, zzz3300000, cea)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, cg), da)) → new_compare17(zzz400000, zzz3300000, cg, da)
new_compare25(zzz400000, zzz3300000, False, db, dc, dd) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, db, dc, dd) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, fa) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, ea)) → new_esEs13(zzz4000, zzz3000, ea)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cgg), cdh) → new_ltEs11(zzz400000, zzz3300000, cgg)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, bgc)) → new_ltEs8(zzz400002, zzz3300002, bgc)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bhc) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, ccf), ccg), cch)) → new_esEs5(zzz4001, zzz3001, ccf, ccg, cch)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, cdh) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_Either, dah), dba)) → new_ltEs15(zzz400000, zzz3300000, dah, dba)
new_compare27(zzz4000, zzz33000, True, bah) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_gt(zzz330, zzz3440, h) → new_esEs8(new_compare13(zzz330, zzz3440, h), GT)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Ratio, daa)) → new_ltEs11(zzz400000, zzz3300000, daa)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_esEs5(zzz400000, zzz3300000, ced, cee, cef)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], ef)) → new_esEs10(zzz4000, zzz3000, ef)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_esEs6(zzz400000, zzz3300000, ceg, ceh)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_esEs5(zzz400001, zzz3300001, bfb, bfc, bfd)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, chf), chg), cdh) → new_ltEs15(zzz400000, zzz3300000, chf, chg)
new_ltEs15(Left(zzz400000), Right(zzz3300000), cdg, cdh) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, bgg), bgh)) → new_ltEs4(zzz400002, zzz3300002, bgg, bgh)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, bd, be) → new_esEs8(new_compare16(zzz400000, zzz3300000, bd, be), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_lt5(zzz400000, zzz3300000, bc) → new_esEs8(new_compare5(zzz400000, zzz3300000, bc), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, ccb), ccc)) → new_esEs7(zzz4001, zzz3001, ccb, ccc)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), cdg, cdh) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, chd), che), cdh) → new_ltEs4(zzz400000, zzz3300000, chd, che)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, cdh) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_esEs24(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, app(ty_Ratio, x2))
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Zero, x0)
new_pePe(True, x0)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_compare26(x0, x1, False, x2, x3)
new_lt13(x0, x1, ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs12(False, False)
new_esEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs22(x0, x1, ty_Integer)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_compare27(Nothing, Nothing, False, x0)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare25(x0, x1, False, x2, x3, x4)
new_esEs8(GT, GT)
new_primMulInt(Pos(x0), Pos(x1))
new_compare(:(x0, x1), [], x2)
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt10(x0, x1)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_esEs19(x0, x1, ty_Int)
new_ltEs7(x0, x1)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], :(x0, x1), x2)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs18(x0, x1, ty_Int)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_compare11(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs10(:(x0, x1), [], x2)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(LT, EQ)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs18(x0, x1)
new_ltEs10(x0, x1, x2)
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_esEs19(x0, x1, ty_Ordering)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_compare114(x0, x1, False, x2, x3)
new_esEs22(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_compare114(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Char)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Nothing, Nothing, x0)
new_primMulNat0(Zero, Zero)
new_compare([], :(x0, x1), x2)
new_lt19(x0, x1)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare27(Just(x0), Just(x1), False, x2)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_primMulNat0(Zero, Succ(x0))
new_compare11(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Bool)
new_compare(:(x0, x1), :(x2, x3), x4)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs14(@0, @0)
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare12(Float(x0, x1), Float(x2, x3))
new_compare27(x0, x1, True, x2)
new_esEs19(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt8(x0, x1, x2, x3, x4)
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs23(x0, x1, ty_Ordering)
new_compare110(x0, x1, True, x2)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs11(x0, x1, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare13(x0, x1, x2)
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_pePe(False, x0)
new_lt4(x0, x1, x2)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs18(x0, x1, ty_Char)
new_esEs19(x0, x1, app(ty_[], x2))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs23(x0, x1, ty_Float)
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_primMulNat0(Succ(x0), Zero)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_primPlusNat1(Zero, Zero)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Float)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_primCompAux1(x0, x1, x2, x3)
new_ltEs20(x0, x1, ty_Int)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(ty_[], x2))
new_compare16(x0, x1, x2, x3)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Nothing, x1)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs8(Nothing, Just(x0), x1)
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_esEs4(Nothing, Nothing, x0)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs9(x0, x1)
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_compare27(Nothing, Just(x0), False, x1)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt16(x0, x1)
new_compare17(x0, x1, x2, x3)
new_compare18(Integer(x0), Integer(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt13(x0, x1, ty_Int)
new_lt5(x0, x1, x2)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, False, x2, x3, x4)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_lt14(x0, x1, ty_Integer)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt14(x0, x1, app(ty_Ratio, x2))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqNat0(Succ(x0), Succ(x1))
new_compare14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Ordering)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Int)
new_compare110(x0, x1, False, x2)
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(False, x0)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_lt15(x0, x1, x2)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_compare24(x0, x1, True, x2, x3)
new_compare113(x0, x1, True)
new_esEs4(Just(x0), Nothing, x1)
new_lt13(x0, x1, ty_Float)
new_primCmpNat0(Zero, Succ(x0))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs25(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_compare27(Just(x0), Nothing, False, x1)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs22(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_lt18(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt17(x0, x1, x2, x3)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, False)
new_esEs12(False, True)
new_compare28(x0, x1, True)
new_sr(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs21(x0, x1, ty_Integer)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs14(False, False)
new_compare([], [], x0)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs5(x0, x1)
new_esEs25(x0, x1, ty_Int)
new_esEs11(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_esEs11(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux0(x0, EQ)
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, True, x2, x3, x4)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs21(x0, x1, ty_@0)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_lt13(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_lt14(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], [], x0)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1, ty_@0)
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Nothing, Just(x0), x1)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_gt(x0, x1, x2)
new_esEs23(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_esEs19(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_compare10(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare10(x0, x1, False, x2, x3)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare113(x0, x1, False)
new_compare26(x0, x1, True, x2, x3)
new_ltEs12(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare11(x0, x1, ty_Bool)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_esEs8(EQ, EQ) → True
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primPlusNat1(Zero, Zero) → Zero
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_primMulNat0(Zero, Zero) → Zero
new_esEs8(GT, GT) → True
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_esEs8(LT, EQ) → False
new_esEs8(EQ, LT) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_esEs8(LT, LT) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_lt9(x0, x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_lt9(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_compare7(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_compare7(x0, x1)
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_compare7(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_sr(x0, x1)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sr(x0, x1)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_sIZE_RATIO
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sIZE_RATIO
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, h, ba)), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, h, ba)), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), zzz3442), LT), h, ba)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), zzz3442), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, h, ba) → zzz732
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), zzz3442), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), zzz3442), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3332), zzz3442), LT), h, ba)
Used ordering: Polynomial interpretation [25]:
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
POL(Branch(x1, x2, x3, x4, x5)) = 1 + x1 + x4 + x5
POL(EQ) = 0
POL(False) = 1
POL(GT) = 0
POL(LT) = 0
POL(Neg(x1)) = 1 + x1
POL(Pos(x1)) = 1
POL(Succ(x1)) = 0
POL(True) = 1
POL(Zero) = 0
POL(new_esEs8(x1, x2)) = 1
POL(new_mkVBalBranch(x1, x2, x3, x4, x5, x6)) = x3 + x4
POL(new_mkVBalBranch3MkVBalBranch1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)) = 1 + x1 + x10 + x5 + x6 + x9
POL(new_mkVBalBranch3MkVBalBranch2(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)) = x1 + x10 + x13 + x4 + x5 + x6 + x9
POL(new_primCmpInt(x1, x2)) = 0
POL(new_primCmpNat0(x1, x2)) = 0
POL(new_primMulInt(x1, x2)) = 1 + x2
POL(new_primMulNat0(x1, x2)) = 0
POL(new_primPlusNat0(x1, x2)) = 0
POL(new_primPlusNat1(x1, x2)) = 1
new_esEs8(GT, LT) → False
new_esEs8(LT, LT) → True
new_esEs8(EQ, LT) → False
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Rewriting
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, h, ba) → new_mkVBalBranch(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, h, ba)
new_mkVBalBranch3MkVBalBranch2(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, h, ba) → new_mkVBalBranch3MkVBalBranch1(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_esEs8(new_primCmpInt(new_primMulInt(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz3442), zzz3332), LT), h, ba)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs8(GT, LT) → False
new_esEs8(EQ, LT) → False
new_esEs8(LT, LT) → True
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_primMulNat0(Zero, Zero) → Zero
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primPlusNat1(Zero, Zero) → Zero
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_primCmpNat0(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primMulNat0(Zero, Zero)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs8(LT, LT)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_primMulNat0(Zero, Succ(x0))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Zero, Succ(x0))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_primCmpNat0(Succ(x0), Zero)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_primPlusNat1(Zero, Zero)
new_esEs8(GT, EQ)
new_esEs8(EQ, GT)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpNat0(Succ(x0), Succ(x1))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs8(GT, GT)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_primMulInt(Pos(x0), Pos(x1))
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
new_splitLT1(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, True, h, ba) → new_splitLT(zzz2584, zzz260, h, ba)
new_splitLT2(zzz2580, zzz2581, zzz2582, Branch(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834), zzz2584, zzz260, True, h, ba) → new_splitLT2(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834, zzz260, new_lt15(Just(zzz260), zzz25830, h), h, ba)
new_splitLT(Branch(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834), zzz260, h, ba) → new_splitLT2(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834, zzz260, new_lt15(Just(zzz260), zzz25830, h), h, ba)
new_splitLT2(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, False, h, ba) → new_splitLT1(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, new_gt0(zzz260, zzz2580, h), h, ba)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbf)) → new_esEs4(zzz4000, zzz3000, dbf)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_esEs7(zzz400001, zzz3300001, bfg, bfh)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, fb), fc), fa) → new_esEs7(zzz4000, zzz3000, fb, fc)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, cdd)) → new_ltEs11(zzz40000, zzz330000, cdd)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, bea), beb)) → new_esEs6(zzz4002, zzz3002, bea, beb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Maybe, dab)) → new_ltEs8(zzz400000, zzz3300000, dab)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs5(zzz4000, zzz3000, cbd, cbe, cbf)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, ff), fa) → new_esEs4(zzz4000, zzz3000, ff)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], cfc)) → new_ltEs10(zzz400001, zzz3300001, cfc)
new_compare([], :(zzz3300000, zzz3300001), bf) → LT
new_compare10(zzz400000, zzz3300000, True, bd, be) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, bhg), bhh), caa)) → new_ltEs13(zzz400000, zzz3300000, bhg, bhh, caa)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_lt8(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cbc)) → new_esEs4(zzz4000, zzz3000, cbc)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), dbb) → False
new_esEs4(Just(zzz4000), Nothing, dbb) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_lt8(zzz400000, zzz3300000, ced, cee, cef)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, fg), fh), ga), fa) → new_esEs5(zzz4000, zzz3000, fg, fh, ga)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bf) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_esEs13(zzz400001, zzz3300001, beh)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, bcb)) → new_esEs4(zzz4001, zzz3001, bcb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, cdh) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bdh)) → new_esEs10(zzz4002, zzz3002, bdh)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, cfe)) → new_ltEs8(zzz400001, zzz3300001, cfe)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, ca)) → new_compare13(zzz400000, zzz3300000, ca)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_lt18(zzz400000, zzz3300000, hh, baa)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_esEs4(zzz400001, zzz3300001, bfa)
new_compare26(zzz400000, zzz3300000, False, hh, baa) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_[], he)) → new_esEs10(zzz4000, zzz3000, he)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, cdh) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(app(ty_@3, hb), hc), hd)) → new_esEs5(zzz4000, zzz3000, hb, hc, hd)
new_esEs26(zzz400000, zzz3300000, app(ty_[], cea)) → new_esEs10(zzz400000, zzz3300000, cea)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, bca)) → new_esEs13(zzz4001, zzz3001, bca)
new_esEs29(zzz400, Just(zzz3300), app(ty_Ratio, cge)) → new_esEs13(zzz400, zzz3300, cge)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_lt18(zzz400001, zzz3300001, bfg, bfh)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_lt15(zzz400000, zzz3300000, cec)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs5(zzz4000, zzz3000, bba, bbb, bbc)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_esEs4(zzz400000, zzz3300000, cec)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, bcg), bch)) → new_esEs6(zzz4001, zzz3001, bcg, bch)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_@2, daf), dag)) → new_ltEs4(zzz400000, zzz3300000, daf, dag)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_esEs7(zzz400000, zzz3300000, hh, baa)
new_lt13(zzz400001, zzz3300001, app(ty_[], beg)) → new_lt4(zzz400001, zzz3300001, beg)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, cdh) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], cda)) → new_esEs10(zzz4001, zzz3001, cda)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], bbd)) → new_esEs10(zzz4000, zzz3000, bbd)
new_compare27(Just(zzz40000), Just(zzz330000), False, bah) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, bah), bah)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], gb), fa) → new_esEs10(zzz4000, zzz3000, gb)
new_esEs7(Left(zzz4000), Right(zzz3000), ge, fa) → False
new_esEs7(Right(zzz4000), Left(zzz3000), ge, fa) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], bg)) → new_compare(zzz400000, zzz3300000, bg)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, bah) → new_esEs8(new_compare13(zzz4000, zzz33000, bah), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, cde), cdf)) → new_ltEs4(zzz40000, zzz330000, cde, cdf)
new_lt4(zzz400000, zzz3300000, bb) → new_esEs8(new_compare(zzz400000, zzz3300000, bb), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bf) → new_fsEs(new_compare(zzz40000, zzz330000, bf))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_lt17(zzz400000, zzz3300000, ceg, ceh)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, bae), baf)) → new_esEs7(zzz4000, zzz3000, bae, baf)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, cga), cgb)) → new_ltEs4(zzz400001, zzz3300001, cga, cgb)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs29(zzz400, Just(zzz3300), ty_Char) → new_esEs17(zzz400, zzz3300)
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, cdd) → new_fsEs(new_compare5(zzz40000, zzz330000, cdd))
new_ltEs8(Nothing, Just(zzz3300000), bhc) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, bah) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, cdb), cdc)) → new_esEs6(zzz4001, zzz3001, cdb, cdc)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), cde, cdf) → new_pePe(new_lt20(zzz400000, zzz3300000, cde), new_asAs(new_esEs26(zzz400000, zzz3300000, cde), new_ltEs20(zzz400001, zzz3300001, cdf)))
new_compare25(zzz400000, zzz3300000, True, db, dc, dd) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, bah)) → new_esEs4(zzz4000, zzz3000, bah)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bdc)) → new_esEs13(zzz4002, zzz3002, bdc)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, hh, baa) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, ccd)) → new_esEs13(zzz4001, zzz3001, ccd)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cah), cba)) → new_esEs7(zzz4000, zzz3000, cah, cba)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cbh), cca)) → new_esEs6(zzz4000, zzz3000, cbh, cca)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, bag)) → new_esEs13(zzz4000, zzz3000, bag)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_esEs13(zzz400000, zzz3300000, ceb)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cgf), cdh) → new_ltEs10(zzz400000, zzz3300000, cgf)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, fa) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bf) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bf), bf)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dcb)) → new_esEs10(zzz4000, zzz3000, dcb)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs29(zzz400, Just(zzz3300), app(ty_Maybe, dbb)) → new_esEs4(zzz400, zzz3300, dbb)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, cad), cae)) → new_ltEs15(zzz400000, zzz3300000, cad, cae)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, cfd)) → new_ltEs11(zzz400001, zzz3300001, cfd)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_Either, gf), gg)) → new_esEs7(zzz4000, zzz3000, gf, gg)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], bhd)) → new_ltEs10(zzz400000, zzz3300000, bhd)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, cdh) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], bb)) → new_lt4(zzz400000, zzz3300000, bb)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, bah) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bf) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bf))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_lt5(zzz400000, zzz3300000, bc)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(app(ty_@3, dac), dad), dae)) → new_ltEs13(zzz400000, zzz3300000, dac, dad, dae)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Ratio, gh)) → new_esEs13(zzz4000, zzz3000, gh)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, bah) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, fd), fa) → new_esEs13(zzz4000, zzz3000, fd)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, gc), gd), fa) → new_esEs6(zzz4000, zzz3000, gc, gd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ec), ed), ee)) → new_esEs5(zzz4000, zzz3000, ec, ed, ee)
new_esEs29(zzz400, Just(zzz3300), app(app(ty_@2, caf), cag)) → new_esEs6(zzz400, zzz3300, caf, cag)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, hh, baa) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, cdh) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, bd, be) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bec, bed, bee) → new_pePe(new_lt14(zzz400000, zzz3300000, bec), new_asAs(new_esEs22(zzz400000, zzz3300000, bec), new_pePe(new_lt13(zzz400001, zzz3300001, bed), new_asAs(new_esEs23(zzz400001, zzz3300001, bed), new_ltEs18(zzz400002, zzz3300002, bee)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cgh), cdh) → new_ltEs8(zzz400000, zzz3300000, cgh)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_esEs5(zzz400000, zzz3300000, db, dc, dd)
new_compare([], [], bf) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, ce), cf)) → new_compare16(zzz400000, zzz3300000, ce, cf)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_esEs7(zzz400000, zzz3300000, cfa, cfb)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), df) → False
new_esEs10(:(zzz4000, zzz4001), [], df) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dbc), dbd)) → new_esEs7(zzz4000, zzz3000, dbc, dbd)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_@2, hf), hg)) → new_esEs6(zzz4000, zzz3000, hf, hg)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_esEs4(zzz400000, zzz3300000, bef)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, cce)) → new_esEs4(zzz4001, zzz3001, cce)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_esEs29(zzz400, Just(zzz3300), app(ty_[], df)) → new_esEs10(zzz400, zzz3300, df)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, bhe)) → new_ltEs11(zzz400000, zzz3300000, bhe)
new_compare10(zzz400000, zzz3300000, False, bd, be) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), caf, cag) → new_asAs(new_esEs24(zzz4000, zzz3000, caf), new_esEs25(zzz4001, zzz3001, cag))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, bh)) → new_compare5(zzz400000, zzz3300000, bh)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, bha), bhb)) → new_ltEs15(zzz400002, zzz3300002, bha, bhb)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], df) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, cdh) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, fa) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz4000, zzz3000, bbe, bbf)
new_esEs29(zzz400, Nothing, dce) → False
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbg), dbh), dca)) → new_esEs5(zzz4000, zzz3000, dbg, dbh, dca)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, hh, baa) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bhc) → False
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, eb)) → new_esEs4(zzz4000, zzz3000, eb)
new_compare24(zzz400000, zzz3300000, False, bd, be) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, bd, be), bd, be)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_lt5(zzz400000, zzz3300000, ceb)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_lt8(zzz400000, zzz3300000, db, dc, dd)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_esEs29(zzz400, Just(zzz3300), ty_Double) → new_esEs16(zzz400, zzz3300)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_esEs29(zzz400, Just(zzz3300), ty_Bool) → new_esEs12(zzz400, zzz3300)
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_esEs13(zzz400000, zzz3300000, bc)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cbb)) → new_esEs13(zzz4000, zzz3000, cbb)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dcc), dcd)) → new_esEs6(zzz4000, zzz3000, dcc, dcd)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, fa) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_esEs6(zzz400000, zzz3300000, bd, be)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, db, dc, dd) → new_esEs8(new_compare14(zzz400000, zzz3300000, db, dc, dd), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, bgb)) → new_ltEs11(zzz400002, zzz3300002, bgb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Maybe, ha)) → new_esEs4(zzz4000, zzz3000, ha)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cb), cc), cd)) → new_compare14(zzz400000, zzz3300000, cb, cc, cd)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, bah) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, bah), bah)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs13(zzz40000, zzz330000, bec, bed, bee)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), df) → new_asAs(new_esEs11(zzz4000, zzz3000, df), new_esEs10(zzz4001, zzz3001, df))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, bd, be) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, bd, be), bd, be)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, hh, baa) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, fa) → new_esEs18(zzz4000, zzz3000)
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_compare110(zzz195, zzz196, True, de) → LT
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, fa) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bf)) → new_ltEs10(zzz40000, zzz330000, bf)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_esEs6(zzz400001, zzz3300001, bfe, bff)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_lt5(zzz400001, zzz3300001, beh)
new_esEs23(zzz400001, zzz3300001, app(ty_[], beg)) → new_esEs10(zzz400001, zzz3300001, beg)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, cdg), cdh)) → new_ltEs15(zzz40000, zzz330000, cdg, cdh)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_lt17(zzz400001, zzz3300001, bfe, bff)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, bcc), bcd), bce)) → new_esEs5(zzz4001, zzz3001, bcc, bcd, bce)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs5(zzz4002, zzz3002, bde, bdf, bdg)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), bab, bac, bad) → new_asAs(new_esEs19(zzz4000, zzz3000, bab), new_asAs(new_esEs20(zzz4001, zzz3001, bac), new_esEs21(zzz4002, zzz3002, bad)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, fa) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, cha), chb), chc), cdh) → new_ltEs13(zzz400000, zzz3300000, cha, chb, chc)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bhc)) → new_ltEs8(zzz40000, zzz330000, bhc)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_lt18(zzz400000, zzz3300000, cfa, cfb)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], bcf)) → new_esEs10(zzz4001, zzz3001, bcf)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, dbb) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, fa) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dbe)) → new_esEs13(zzz4000, zzz3000, dbe)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, hh, baa) → new_esEs8(new_compare17(zzz400000, zzz3300000, hh, baa), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bda), bdb)) → new_esEs7(zzz4002, zzz3002, bda, bdb)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, bgd), bge), bgf)) → new_ltEs13(zzz400002, zzz3300002, bgd, bge, bgf)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_lt15(zzz400001, zzz3300001, bfa)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, db, dc, dd) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, de) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_lt17(zzz400000, zzz3300000, bd, be)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, cff), cfg), cfh)) → new_ltEs13(zzz400001, zzz3300001, cff, cfg, cfh)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, dg), dh)) → new_esEs7(zzz4000, zzz3000, dg, dh)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_lt15(zzz400000, zzz3300000, bef)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], bga)) → new_ltEs10(zzz400002, zzz3300002, bga)
new_esEs24(zzz4000, zzz3000, app(ty_[], cbg)) → new_esEs10(zzz4000, zzz3000, cbg)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, bdd)) → new_esEs4(zzz4002, zzz3002, bdd)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, bbg), bbh)) → new_esEs7(zzz4001, zzz3001, bbg, bbh)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, cgc), cgd)) → new_ltEs15(zzz400001, zzz3300001, cgc, cgd)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, eg), eh)) → new_esEs6(zzz4000, zzz3000, eg, eh)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_[], chh)) → new_ltEs10(zzz400000, zzz3300000, chh)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, bhf)) → new_ltEs8(zzz400000, zzz3300000, bhf)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs29(zzz400, Just(zzz3300), app(app(app(ty_@3, bab), bac), bad)) → new_esEs5(zzz400, zzz3300, bab, bac, bad)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cge) → new_asAs(new_esEs27(zzz4000, zzz3000, cge), new_esEs28(zzz4001, zzz3001, cge))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_esEs29(zzz400, Just(zzz3300), ty_Float) → new_esEs15(zzz400, zzz3300)
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, db, dc, dd) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, cab), cac)) → new_ltEs4(zzz400000, zzz3300000, cab, cac)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], bb)) → new_esEs10(zzz400000, zzz3300000, bb)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_esEs29(zzz400, Just(zzz3300), app(app(ty_Either, ge), fa)) → new_esEs7(zzz400, zzz3300, ge, fa)
new_lt20(zzz400000, zzz3300000, app(ty_[], cea)) → new_lt4(zzz400000, zzz3300000, cea)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, cg), da)) → new_compare17(zzz400000, zzz3300000, cg, da)
new_compare25(zzz400000, zzz3300000, False, db, dc, dd) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, db, dc, dd) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, fa) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, ea)) → new_esEs13(zzz4000, zzz3000, ea)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cgg), cdh) → new_ltEs11(zzz400000, zzz3300000, cgg)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, bgc)) → new_ltEs8(zzz400002, zzz3300002, bgc)
new_ltEs14(True, False) → False
new_gt0(zzz400, zzz330, dce) → new_esEs8(new_compare30(zzz400, zzz330, dce), GT)
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bhc) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, ccf), ccg), cch)) → new_esEs5(zzz4001, zzz3001, ccf, ccg, cch)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, cdh) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_Either, dah), dba)) → new_ltEs15(zzz400000, zzz3300000, dah, dba)
new_compare27(zzz4000, zzz33000, True, bah) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Ratio, daa)) → new_ltEs11(zzz400000, zzz3300000, daa)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_esEs29(zzz400, Just(zzz3300), ty_Int) → new_esEs18(zzz400, zzz3300)
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_esEs5(zzz400000, zzz3300000, ced, cee, cef)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], ef)) → new_esEs10(zzz4000, zzz3000, ef)
new_esEs29(zzz400, Just(zzz3300), ty_Ordering) → new_esEs8(zzz400, zzz3300)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_esEs29(zzz400, Just(zzz3300), ty_Integer) → new_esEs9(zzz400, zzz3300)
new_esEs29(zzz400, Just(zzz3300), ty_@0) → new_esEs14(zzz400, zzz3300)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_esEs6(zzz400000, zzz3300000, ceg, ceh)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_esEs5(zzz400001, zzz3300001, bfb, bfc, bfd)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, chf), chg), cdh) → new_ltEs15(zzz400000, zzz3300000, chf, chg)
new_ltEs15(Left(zzz400000), Right(zzz3300000), cdg, cdh) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, bgg), bgh)) → new_ltEs4(zzz400002, zzz3300002, bgg, bgh)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, bd, be) → new_esEs8(new_compare16(zzz400000, zzz3300000, bd, be), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_compare30(zzz400, zzz330, dce) → new_compare27(Just(zzz400), zzz330, new_esEs29(zzz400, zzz330, dce), dce)
new_lt5(zzz400000, zzz3300000, bc) → new_esEs8(new_compare5(zzz400000, zzz3300000, bc), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, ccb), ccc)) → new_esEs7(zzz4001, zzz3001, ccb, ccc)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), cdg, cdh) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, chd), che), cdh) → new_ltEs4(zzz400000, zzz3300000, chd, che)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, cdh) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_esEs24(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, app(ty_Ratio, x2))
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs29(x0, Just(x1), ty_Integer)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Zero, x0)
new_pePe(True, x0)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_compare26(x0, x1, False, x2, x3)
new_lt13(x0, x1, ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs12(False, False)
new_esEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs22(x0, x1, ty_Integer)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_compare27(Nothing, Nothing, False, x0)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare25(x0, x1, False, x2, x3, x4)
new_esEs8(GT, GT)
new_primMulInt(Pos(x0), Pos(x1))
new_compare(:(x0, x1), [], x2)
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt10(x0, x1)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_esEs19(x0, x1, ty_Int)
new_ltEs7(x0, x1)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], :(x0, x1), x2)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs18(x0, x1, ty_Int)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_esEs29(x0, Nothing, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_compare11(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs10(:(x0, x1), [], x2)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, Just(x1), app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(LT, EQ)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(x0, x1)
new_ltEs10(x0, x1, x2)
new_esEs19(x0, x1, ty_Ordering)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_compare114(x0, x1, False, x2, x3)
new_esEs22(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_compare114(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Char)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Nothing, Nothing, x0)
new_primMulNat0(Zero, Zero)
new_compare([], :(x0, x1), x2)
new_lt19(x0, x1)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare27(Just(x0), Just(x1), False, x2)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_primMulNat0(Zero, Succ(x0))
new_compare11(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Bool)
new_compare(:(x0, x1), :(x2, x3), x4)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs29(x0, Just(x1), app(ty_Ratio, x2))
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs14(@0, @0)
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare12(Float(x0, x1), Float(x2, x3))
new_compare27(x0, x1, True, x2)
new_esEs19(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt8(x0, x1, x2, x3, x4)
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs29(x0, Just(x1), ty_@0)
new_esEs23(x0, x1, ty_Ordering)
new_compare110(x0, x1, True, x2)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs11(x0, x1, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare13(x0, x1, x2)
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_pePe(False, x0)
new_lt4(x0, x1, x2)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_compare30(x0, x1, x2)
new_ltEs18(x0, x1, ty_Char)
new_esEs19(x0, x1, app(ty_[], x2))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs23(x0, x1, ty_Float)
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_primMulNat0(Succ(x0), Zero)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_primPlusNat1(Zero, Zero)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Float)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs29(x0, Just(x1), ty_Char)
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_primCompAux1(x0, x1, x2, x3)
new_ltEs20(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(ty_[], x2))
new_compare16(x0, x1, x2, x3)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Nothing, x1)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs8(Nothing, Just(x0), x1)
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_esEs4(Nothing, Nothing, x0)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs9(x0, x1)
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_compare27(Nothing, Just(x0), False, x1)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt16(x0, x1)
new_compare17(x0, x1, x2, x3)
new_compare18(Integer(x0), Integer(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs29(x0, Just(x1), ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt13(x0, x1, ty_Int)
new_lt5(x0, x1, x2)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, False, x2, x3, x4)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_lt14(x0, x1, ty_Integer)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt14(x0, x1, app(ty_Ratio, x2))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqNat0(Succ(x0), Succ(x1))
new_compare14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, Just(x1), ty_Ordering)
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Ordering)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs29(x0, Just(x1), ty_Float)
new_esEs24(x0, x1, ty_Int)
new_compare110(x0, x1, False, x2)
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(False, x0)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_lt15(x0, x1, x2)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_compare24(x0, x1, True, x2, x3)
new_esEs29(x0, Just(x1), ty_Bool)
new_compare113(x0, x1, True)
new_esEs4(Just(x0), Nothing, x1)
new_lt13(x0, x1, ty_Float)
new_primCmpNat0(Zero, Succ(x0))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs25(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_compare27(Just(x0), Nothing, False, x1)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs22(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_lt18(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_esEs29(x0, Just(x1), app(app(ty_Either, x2), x3))
new_esEs29(x0, Just(x1), app(ty_[], x2))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt17(x0, x1, x2, x3)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, False)
new_esEs12(False, True)
new_compare28(x0, x1, True)
new_sr(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs21(x0, x1, ty_Integer)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs14(False, False)
new_compare([], [], x0)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs5(x0, x1)
new_esEs11(x0, x1, ty_Ordering)
new_esEs25(x0, x1, ty_Int)
new_esEs23(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_esEs11(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux0(x0, EQ)
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, True, x2, x3, x4)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_esEs20(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs21(x0, x1, ty_@0)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_lt13(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_lt14(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], [], x0)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs29(x0, Just(x1), ty_Double)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1, ty_@0)
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs4(Nothing, Just(x0), x1)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, Just(x1), app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs23(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_esEs29(x0, Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_gt0(x0, x1, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_compare10(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare10(x0, x1, False, x2, x3)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare113(x0, x1, False)
new_compare26(x0, x1, True, x2, x3)
new_ltEs12(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare11(x0, x1, ty_Bool)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
new_splitGT(Branch(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944), zzz260, h, ba) → new_splitGT2(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944, zzz260, new_gt(Just(zzz260), zzz25940, h), h, ba)
new_splitGT1(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, True, h, ba) → new_splitGT(zzz2593, zzz260, h, ba)
new_splitGT2(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, False, h, ba) → new_splitGT1(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, new_lt15(Just(zzz260), zzz2590, h), h, ba)
new_splitGT2(zzz2590, zzz2591, zzz2592, zzz2593, Branch(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944), zzz260, True, h, ba) → new_splitGT2(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944, zzz260, new_gt(Just(zzz260), zzz25940, h), h, ba)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbg)) → new_esEs4(zzz4000, zzz3000, dbg)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, bfh), bga)) → new_esEs7(zzz400001, zzz3300001, bfh, bga)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, fc), fd), fb) → new_esEs7(zzz4000, zzz3000, fc, fd)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, cde)) → new_ltEs11(zzz40000, zzz330000, cde)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, beb), bec)) → new_esEs6(zzz4002, zzz3002, beb, bec)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(ty_Maybe, dac)) → new_ltEs8(zzz400000, zzz3300000, dac)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cbe), cbf), cbg)) → new_esEs5(zzz4000, zzz3000, cbe, cbf, cbg)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, fg), fb) → new_esEs4(zzz4000, zzz3000, fg)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], cfd)) → new_ltEs10(zzz400001, zzz3300001, cfd)
new_compare([], :(zzz3300000, zzz3300001), bg) → LT
new_compare10(zzz400000, zzz3300000, True, be, bf) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, bhh), caa), cab)) → new_ltEs13(zzz400000, zzz3300000, bhh, caa, cab)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, bfc), bfd), bfe)) → new_lt8(zzz400001, zzz3300001, bfc, bfd, bfe)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cbd)) → new_esEs4(zzz4000, zzz3000, cbd)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), dbc) → False
new_esEs4(Just(zzz4000), Nothing, dbc) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, cee), cef), ceg)) → new_lt8(zzz400000, zzz3300000, cee, cef, ceg)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, fh), ga), gb), fb) → new_esEs5(zzz4000, zzz3000, fh, ga, gb)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bg) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, bfa)) → new_esEs13(zzz400001, zzz3300001, bfa)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, bcc)) → new_esEs4(zzz4001, zzz3001, bcc)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, cea) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bea)) → new_esEs10(zzz4002, zzz3002, bea)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, cff)) → new_ltEs8(zzz400001, zzz3300001, cff)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, cb)) → new_compare13(zzz400000, zzz3300000, cb)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, baa), bab)) → new_lt18(zzz400000, zzz3300000, baa, bab)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, bfb)) → new_esEs4(zzz400001, zzz3300001, bfb)
new_compare26(zzz400000, zzz3300000, False, baa, bab) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, baa, bab), baa, bab)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(ty_[], hf)) → new_esEs10(zzz4000, zzz3000, hf)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, cea) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(app(app(ty_@3, hc), hd), he)) → new_esEs5(zzz4000, zzz3000, hc, hd, he)
new_esEs26(zzz400000, zzz3300000, app(ty_[], ceb)) → new_esEs10(zzz400000, zzz3300000, ceb)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, bcb)) → new_esEs13(zzz4001, zzz3001, bcb)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, bfh), bga)) → new_lt18(zzz400001, zzz3300001, bfh, bga)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, ced)) → new_lt15(zzz400000, zzz3300000, ced)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs5(zzz4000, zzz3000, bbb, bbc, bbd)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, ced)) → new_esEs4(zzz400000, zzz3300000, ced)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, bch), bda)) → new_esEs6(zzz4001, zzz3001, bch, bda)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(app(ty_@2, dag), dah)) → new_ltEs4(zzz400000, zzz3300000, dag, dah)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, baa), bab)) → new_esEs7(zzz400000, zzz3300000, baa, bab)
new_lt13(zzz400001, zzz3300001, app(ty_[], beh)) → new_lt4(zzz400001, zzz3300001, beh)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, cea) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], cdb)) → new_esEs10(zzz4001, zzz3001, cdb)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], bbe)) → new_esEs10(zzz4000, zzz3000, bbe)
new_compare27(Just(zzz40000), Just(zzz330000), False, bba) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, bba), bba)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], gc), fb) → new_esEs10(zzz4000, zzz3000, gc)
new_esEs7(Left(zzz4000), Right(zzz3000), gf, fb) → False
new_esEs7(Right(zzz4000), Left(zzz3000), gf, fb) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], bh)) → new_compare(zzz400000, zzz3300000, bh)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, bba) → new_esEs8(new_compare13(zzz4000, zzz33000, bba), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, cdf), cdg)) → new_ltEs4(zzz40000, zzz330000, cdf, cdg)
new_lt4(zzz400000, zzz3300000, bb) → new_esEs8(new_compare(zzz400000, zzz3300000, bb), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bg) → new_fsEs(new_compare(zzz40000, zzz330000, bg))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, ceh), cfa)) → new_lt17(zzz400000, zzz3300000, ceh, cfa)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, baf), bag)) → new_esEs7(zzz4000, zzz3000, baf, bag)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, cgb), cgc)) → new_ltEs4(zzz400001, zzz3300001, cgb, cgc)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, cde) → new_fsEs(new_compare5(zzz40000, zzz330000, cde))
new_ltEs8(Nothing, Just(zzz3300000), bhd) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, bba) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, cdc), cdd)) → new_esEs6(zzz4001, zzz3001, cdc, cdd)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), cdf, cdg) → new_pePe(new_lt20(zzz400000, zzz3300000, cdf), new_asAs(new_esEs26(zzz400000, zzz3300000, cdf), new_ltEs20(zzz400001, zzz3300001, cdg)))
new_compare25(zzz400000, zzz3300000, True, dc, dd, de) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, bba)) → new_esEs4(zzz4000, zzz3000, bba)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bdd)) → new_esEs13(zzz4002, zzz3002, bdd)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, baa, bab) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, baa, bab), baa, bab)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, cce)) → new_esEs13(zzz4001, zzz3001, cce)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cba), cbb)) → new_esEs7(zzz4000, zzz3000, cba, cbb)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cca), ccb)) → new_esEs6(zzz4000, zzz3000, cca, ccb)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, bah)) → new_esEs13(zzz4000, zzz3000, bah)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, cec)) → new_esEs13(zzz400000, zzz3300000, cec)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cgg), cea) → new_ltEs10(zzz400000, zzz3300000, cgg)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, fb) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bg) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bg), bg)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dcc)) → new_esEs10(zzz4000, zzz3000, dcc)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, cae), caf)) → new_ltEs15(zzz400000, zzz3300000, cae, caf)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, cfe)) → new_ltEs11(zzz400001, zzz3300001, cfe)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(app(ty_Either, gg), gh)) → new_esEs7(zzz4000, zzz3000, gg, gh)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], bhe)) → new_ltEs10(zzz400000, zzz3300000, bhe)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, cea) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], bb)) → new_lt4(zzz400000, zzz3300000, bb)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, bba) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bg) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bg))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bd)) → new_lt5(zzz400000, zzz3300000, bd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(app(app(ty_@3, dad), dae), daf)) → new_ltEs13(zzz400000, zzz3300000, dad, dae, daf)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(ty_Ratio, ha)) → new_esEs13(zzz4000, zzz3000, ha)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, bba) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, ff), fb) → new_esEs13(zzz4000, zzz3000, ff)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, gd), ge), fb) → new_esEs6(zzz4000, zzz3000, gd, ge)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ed), ee), ef)) → new_esEs5(zzz4000, zzz3000, ed, ee, ef)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, baa, bab) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, cea) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, be, bf) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bed, bee, bef) → new_pePe(new_lt14(zzz400000, zzz3300000, bed), new_asAs(new_esEs22(zzz400000, zzz3300000, bed), new_pePe(new_lt13(zzz400001, zzz3300001, bee), new_asAs(new_esEs23(zzz400001, zzz3300001, bee), new_ltEs18(zzz400002, zzz3300002, bef)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cha), cea) → new_ltEs8(zzz400000, zzz3300000, cha)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, dc), dd), de)) → new_esEs5(zzz400000, zzz3300000, dc, dd, de)
new_compare([], [], bg) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, cf), cg)) → new_compare16(zzz400000, zzz3300000, cf, cg)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, cfb), cfc)) → new_esEs7(zzz400000, zzz3300000, cfb, cfc)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), dg) → False
new_esEs10(:(zzz4000, zzz4001), [], dg) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dbd), dbe)) → new_esEs7(zzz4000, zzz3000, dbd, dbe)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(app(ty_@2, hg), hh)) → new_esEs6(zzz4000, zzz3000, hg, hh)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, beg)) → new_esEs4(zzz400000, zzz3300000, beg)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, ccf)) → new_esEs4(zzz4001, zzz3001, ccf)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, bhf)) → new_ltEs11(zzz400000, zzz3300000, bhf)
new_compare10(zzz400000, zzz3300000, False, be, bf) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), cag, cah) → new_asAs(new_esEs24(zzz4000, zzz3000, cag), new_esEs25(zzz4001, zzz3001, cah))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, ca)) → new_compare5(zzz400000, zzz3300000, ca)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, bhb), bhc)) → new_ltEs15(zzz400002, zzz3300002, bhb, bhc)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], dg) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, cea) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, fb) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, bbf), bbg)) → new_esEs6(zzz4000, zzz3000, bbf, bbg)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbh), dca), dcb)) → new_esEs5(zzz4000, zzz3000, dbh, dca, dcb)
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, baa, bab) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bhd) → False
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, ec)) → new_esEs4(zzz4000, zzz3000, ec)
new_compare24(zzz400000, zzz3300000, False, be, bf) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, be, bf), be, bf)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, cec)) → new_lt5(zzz400000, zzz3300000, cec)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, dc), dd), de)) → new_lt8(zzz400000, zzz3300000, dc, dd, de)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bd)) → new_esEs13(zzz400000, zzz3300000, bd)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cbc)) → new_esEs13(zzz4000, zzz3000, cbc)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dcd), dce)) → new_esEs6(zzz4000, zzz3000, dcd, dce)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, fb) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, be), bf)) → new_esEs6(zzz400000, zzz3300000, be, bf)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, dc, dd, de) → new_esEs8(new_compare14(zzz400000, zzz3300000, dc, dd, de), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, bgc)) → new_ltEs11(zzz400002, zzz3300002, bgc)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, app(ty_Maybe, hb)) → new_esEs4(zzz4000, zzz3000, hb)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cc), cd), ce)) → new_compare14(zzz400000, zzz3300000, cc, cd, ce)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, bba) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, bba), bba)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bed), bee), bef)) → new_ltEs13(zzz40000, zzz330000, bed, bee, bef)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), dg) → new_asAs(new_esEs11(zzz4000, zzz3000, dg), new_esEs10(zzz4001, zzz3001, dg))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, be, bf) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, be, bf), be, bf)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, baa, bab) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, fb) → new_esEs18(zzz4000, zzz3000)
new_compare110(zzz195, zzz196, True, df) → LT
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, fb) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bg)) → new_ltEs10(zzz40000, zzz330000, bg)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, bff), bfg)) → new_esEs6(zzz400001, zzz3300001, bff, bfg)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, bfa)) → new_lt5(zzz400001, zzz3300001, bfa)
new_esEs23(zzz400001, zzz3300001, app(ty_[], beh)) → new_esEs10(zzz400001, zzz3300001, beh)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, cdh), cea)) → new_ltEs15(zzz40000, zzz330000, cdh, cea)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, bff), bfg)) → new_lt17(zzz400001, zzz3300001, bff, bfg)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, bcd), bce), bcf)) → new_esEs5(zzz4001, zzz3001, bcd, bce, bcf)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bdf), bdg), bdh)) → new_esEs5(zzz4002, zzz3002, bdf, bdg, bdh)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), gf, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), bac, bad, bae) → new_asAs(new_esEs19(zzz4000, zzz3000, bac), new_asAs(new_esEs20(zzz4001, zzz3001, bad), new_esEs21(zzz4002, zzz3002, bae)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, fb) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, chb), chc), chd), cea) → new_ltEs13(zzz400000, zzz3300000, chb, chc, chd)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bhd)) → new_ltEs8(zzz40000, zzz330000, bhd)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, cfb), cfc)) → new_lt18(zzz400000, zzz3300000, cfb, cfc)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], bcg)) → new_esEs10(zzz4001, zzz3001, bcg)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, dbc) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, fb) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dbf)) → new_esEs13(zzz4000, zzz3000, dbf)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, baa, bab) → new_esEs8(new_compare17(zzz400000, zzz3300000, baa, bab), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bdb), bdc)) → new_esEs7(zzz4002, zzz3002, bdb, bdc)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, bge), bgf), bgg)) → new_ltEs13(zzz400002, zzz3300002, bge, bgf, bgg)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, bfb)) → new_lt15(zzz400001, zzz3300001, bfb)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, dc, dd, de) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, df) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, be), bf)) → new_lt17(zzz400000, zzz3300000, be, bf)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, cfg), cfh), cga)) → new_ltEs13(zzz400001, zzz3300001, cfg, cfh, cga)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, dh), ea)) → new_esEs7(zzz4000, zzz3000, dh, ea)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, beg)) → new_lt15(zzz400000, zzz3300000, beg)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], bgb)) → new_ltEs10(zzz400002, zzz3300002, bgb)
new_esEs24(zzz4000, zzz3000, app(ty_[], cbh)) → new_esEs10(zzz4000, zzz3000, cbh)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, bde)) → new_esEs4(zzz4002, zzz3002, bde)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, bbh), bca)) → new_esEs7(zzz4001, zzz3001, bbh, bca)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, cgd), cge)) → new_ltEs15(zzz400001, zzz3300001, cgd, cge)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, eh), fa)) → new_esEs6(zzz4000, zzz3000, eh, fa)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(ty_[], daa)) → new_ltEs10(zzz400000, zzz3300000, daa)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, bhg)) → new_ltEs8(zzz400000, zzz3300000, bhg)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cgf) → new_asAs(new_esEs27(zzz4000, zzz3000, cgf), new_esEs28(zzz4001, zzz3001, cgf))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, dc, dd, de) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, dc, dd, de), dc, dd, de)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, cac), cad)) → new_ltEs4(zzz400000, zzz3300000, cac, cad)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], bb)) → new_esEs10(zzz400000, zzz3300000, bb)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_lt20(zzz400000, zzz3300000, app(ty_[], ceb)) → new_lt4(zzz400000, zzz3300000, ceb)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, da), db)) → new_compare17(zzz400000, zzz3300000, da, db)
new_compare25(zzz400000, zzz3300000, False, dc, dd, de) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, dc, dd, de), dc, dd, de)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, dc, dd, de) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, fb) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, eb)) → new_esEs13(zzz4000, zzz3000, eb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cgh), cea) → new_ltEs11(zzz400000, zzz3300000, cgh)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, bgd)) → new_ltEs8(zzz400002, zzz3300002, bgd)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bhd) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, ccg), cch), cda)) → new_esEs5(zzz4001, zzz3001, ccg, cch, cda)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, cea) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(app(ty_Either, dba), dbb)) → new_ltEs15(zzz400000, zzz3300000, dba, dbb)
new_compare27(zzz4000, zzz33000, True, bba) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_gt(zzz330, zzz3440, bc) → new_esEs8(new_compare13(zzz330, zzz3440, bc), GT)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, app(ty_Ratio, dab)) → new_ltEs11(zzz400000, zzz3300000, dab)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, cee), cef), ceg)) → new_esEs5(zzz400000, zzz3300000, cee, cef, ceg)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], eg)) → new_esEs10(zzz4000, zzz3000, eg)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdh, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, ceh), cfa)) → new_esEs6(zzz400000, zzz3300000, ceh, cfa)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, bfc), bfd), bfe)) → new_esEs5(zzz400001, zzz3300001, bfc, bfd, bfe)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, chg), chh), cea) → new_ltEs15(zzz400000, zzz3300000, chg, chh)
new_ltEs15(Left(zzz400000), Right(zzz3300000), cdh, cea) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, bgh), bha)) → new_ltEs4(zzz400002, zzz3300002, bgh, bha)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, be, bf) → new_esEs8(new_compare16(zzz400000, zzz3300000, be, bf), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_lt5(zzz400000, zzz3300000, bd) → new_esEs8(new_compare5(zzz400000, zzz3300000, bd), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, ccc), ccd)) → new_esEs7(zzz4001, zzz3001, ccc, ccd)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), cdh, cea) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, che), chf), cea) → new_ltEs4(zzz400000, zzz3300000, che, chf)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, cea) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs24(x0, x1, ty_Ordering)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_esEs10([], :(x0, x1), x2)
new_esEs19(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_lt5(x0, x1, x2)
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_esEs23(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_primPlusNat0(Zero, x0)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_pePe(True, x0)
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_lt13(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs12(False, False)
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_lt11(x0, x1)
new_compare111(x0, x1, False)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare114(x0, x1, False, x2, x3)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_Integer)
new_compare6(Double(x0, x1), Double(x2, x3))
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_esEs8(GT, GT)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_lt10(x0, x1)
new_compare26(x0, x1, True, x2, x3)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_compare14(x0, x1, x2, x3, x4)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_compare10(x0, x1, False, x2, x3)
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_esEs19(x0, x1, ty_Int)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, app(ty_[], x2))
new_ltEs7(x0, x1)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, ty_Int)
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_lt20(x0, x1, app(ty_[], x2))
new_compare27(Just(x0), Just(x1), False, x2)
new_compare([], [], x0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs6(LT, EQ)
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs11(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_compare110(x0, x1, False, x2)
new_esEs18(x0, x1)
new_esEs19(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs22(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_lt20(x0, x1, ty_@0)
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_esEs23(x0, x1, ty_Char)
new_esEs4(Just(x0), Nothing, x1)
new_primMulNat0(Zero, Zero)
new_compare16(x0, x1, x2, x3)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_primMulNat0(Zero, Succ(x0))
new_compare11(x0, x1, ty_Double)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_ltEs20(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Bool)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Nothing, x1)
new_compare8(x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs17(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_gt(x0, x1, x2)
new_primCompAux1(x0, x1, x2, x3)
new_esEs14(@0, @0)
new_compare12(Float(x0, x1), Float(x2, x3))
new_esEs19(x0, x1, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs23(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_pePe(False, x0)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_lt4(x0, x1, x2)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs11(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_compare(:(x0, x1), [], x2)
new_esEs11(x0, x1, ty_Double)
new_compare(:(x0, x1), :(x2, x3), x4)
new_ltEs18(x0, x1, ty_Char)
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs23(x0, x1, ty_Float)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_primMulNat0(Succ(x0), Zero)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare110(x0, x1, True, x2)
new_compare112(x0, x1, False, x2, x3, x4)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Zero, Zero)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Float)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_ltEs8(Nothing, Nothing, x0)
new_ltEs20(x0, x1, ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_lt14(x0, x1, app(ty_[], x2))
new_compare114(x0, x1, True, x2, x3)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_lt14(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs9(x0, x1)
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_lt18(x0, x1, x2, x3)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt20(x0, x1, ty_Bool)
new_compare112(x0, x1, True, x2, x3, x4)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt16(x0, x1)
new_lt8(x0, x1, x2, x3, x4)
new_compare18(Integer(x0), Integer(x1))
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(ty_[], x2))
new_esEs4(Nothing, Nothing, x0)
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Ordering)
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_lt13(x0, x1, ty_Int)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt14(x0, x1, ty_Integer)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primEqNat0(Succ(x0), Succ(x1))
new_compare25(x0, x1, False, x2, x3, x4)
new_esEs24(x0, x1, ty_Char)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs18(x0, x1, app(ty_[], x2))
new_compare11(x0, x1, app(ty_Maybe, x2))
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs26(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare17(x0, x1, x2, x3)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs24(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs24(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(False, x0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_compare113(x0, x1, True)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_lt13(x0, x1, ty_Float)
new_primCmpNat0(Zero, Succ(x0))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs11(x0, x1, x2)
new_esEs10(:(x0, x1), [], x2)
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_esEs4(Nothing, Just(x0), x1)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_esEs28(x0, x1, ty_Int)
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_compare27(Nothing, Nothing, False, x0)
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_lt15(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare27(Nothing, Just(x0), False, x1)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs22(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_lt17(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_compare24(x0, x1, True, x2, x3)
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_lt20(x0, x1, ty_Char)
new_lt14(x0, x1, app(ty_Ratio, x2))
new_compare([], :(x0, x1), x2)
new_esEs25(x0, x1, ty_Integer)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs12(True, False)
new_esEs12(False, True)
new_compare28(x0, x1, True)
new_sr(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs11(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs21(x0, x1, ty_Integer)
new_ltEs14(False, False)
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs8(Nothing, Just(x0), x1)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_[], x2))
new_compare27(Just(x0), Nothing, False, x1)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1)
new_esEs25(x0, x1, ty_Int)
new_esEs11(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_primCompAux0(x0, EQ)
new_esEs25(x0, x1, ty_Ordering)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_not(False)
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_esEs10([], [], x0)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_compare26(x0, x1, False, x2, x3)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_compare10(x0, x1, True, x2, x3)
new_lt14(x0, x1, ty_Float)
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_lt13(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_@0)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_esEs23(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_compare27(x0, x1, True, x2)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1, ty_@0)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_ltEs10(x0, x1, x2)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_primCompAux0(x0, GT)
new_compare13(x0, x1, x2)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_compare24(x0, x1, False, x2, x3)
new_esEs21(x0, x1, ty_Float)
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_compare113(x0, x1, False)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_compare11(x0, x1, ty_Bool)
new_lt13(x0, x1, app(ty_[], x2))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
new_splitLT20(zzz330, zzz331, zzz332, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz334, True, h, ba) → new_splitLT20(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, new_lt15(Nothing, zzz3330, h), h, ba)
new_splitLT0(Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), h, ba) → new_splitLT20(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, new_lt15(Nothing, zzz3330, h), h, ba)
new_splitLT20(zzz330, zzz331, zzz332, zzz333, zzz334, False, h, ba) → new_splitLT10(zzz330, zzz331, zzz332, zzz333, zzz334, new_gt1(zzz330, h), h, ba)
new_splitLT10(zzz330, zzz331, zzz332, zzz333, zzz334, True, h, ba) → new_splitLT0(zzz334, h, ba)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbf)) → new_esEs4(zzz4000, zzz3000, dbf)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_esEs7(zzz400001, zzz3300001, bfg, bfh)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, fb), fc), fa) → new_esEs7(zzz4000, zzz3000, fb, fc)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, cdd)) → new_ltEs11(zzz40000, zzz330000, cdd)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, bea), beb)) → new_esEs6(zzz4002, zzz3002, bea, beb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Maybe, dab)) → new_ltEs8(zzz400000, zzz3300000, dab)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs5(zzz4000, zzz3000, cbd, cbe, cbf)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, ff), fa) → new_esEs4(zzz4000, zzz3000, ff)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], cfc)) → new_ltEs10(zzz400001, zzz3300001, cfc)
new_compare([], :(zzz3300000, zzz3300001), bf) → LT
new_compare10(zzz400000, zzz3300000, True, bd, be) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, bhg), bhh), caa)) → new_ltEs13(zzz400000, zzz3300000, bhg, bhh, caa)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_lt8(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cbc)) → new_esEs4(zzz4000, zzz3000, cbc)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), dbb) → False
new_esEs4(Just(zzz4000), Nothing, dbb) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_lt8(zzz400000, zzz3300000, ced, cee, cef)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, fg), fh), ga), fa) → new_esEs5(zzz4000, zzz3000, fg, fh, ga)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bf) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_esEs13(zzz400001, zzz3300001, beh)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, bcb)) → new_esEs4(zzz4001, zzz3001, bcb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, cdh) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bdh)) → new_esEs10(zzz4002, zzz3002, bdh)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, cfe)) → new_ltEs8(zzz400001, zzz3300001, cfe)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, ca)) → new_compare13(zzz400000, zzz3300000, ca)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_lt18(zzz400000, zzz3300000, hh, baa)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_esEs4(zzz400001, zzz3300001, bfa)
new_compare26(zzz400000, zzz3300000, False, hh, baa) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_[], he)) → new_esEs10(zzz4000, zzz3000, he)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, cdh) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(app(ty_@3, hb), hc), hd)) → new_esEs5(zzz4000, zzz3000, hb, hc, hd)
new_esEs26(zzz400000, zzz3300000, app(ty_[], cea)) → new_esEs10(zzz400000, zzz3300000, cea)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, bca)) → new_esEs13(zzz4001, zzz3001, bca)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_lt18(zzz400001, zzz3300001, bfg, bfh)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_lt15(zzz400000, zzz3300000, cec)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs5(zzz4000, zzz3000, bba, bbb, bbc)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_esEs4(zzz400000, zzz3300000, cec)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, bcg), bch)) → new_esEs6(zzz4001, zzz3001, bcg, bch)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_@2, daf), dag)) → new_ltEs4(zzz400000, zzz3300000, daf, dag)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_esEs7(zzz400000, zzz3300000, hh, baa)
new_lt13(zzz400001, zzz3300001, app(ty_[], beg)) → new_lt4(zzz400001, zzz3300001, beg)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, cdh) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], cda)) → new_esEs10(zzz4001, zzz3001, cda)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], bbd)) → new_esEs10(zzz4000, zzz3000, bbd)
new_compare27(Just(zzz40000), Just(zzz330000), False, bah) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, bah), bah)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], gb), fa) → new_esEs10(zzz4000, zzz3000, gb)
new_esEs7(Left(zzz4000), Right(zzz3000), ge, fa) → False
new_esEs7(Right(zzz4000), Left(zzz3000), ge, fa) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], bg)) → new_compare(zzz400000, zzz3300000, bg)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, bah) → new_esEs8(new_compare13(zzz4000, zzz33000, bah), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, cde), cdf)) → new_ltEs4(zzz40000, zzz330000, cde, cdf)
new_lt4(zzz400000, zzz3300000, bb) → new_esEs8(new_compare(zzz400000, zzz3300000, bb), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bf) → new_fsEs(new_compare(zzz40000, zzz330000, bf))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_lt17(zzz400000, zzz3300000, ceg, ceh)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, bae), baf)) → new_esEs7(zzz4000, zzz3000, bae, baf)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, cga), cgb)) → new_ltEs4(zzz400001, zzz3300001, cga, cgb)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, cdd) → new_fsEs(new_compare5(zzz40000, zzz330000, cdd))
new_ltEs8(Nothing, Just(zzz3300000), bhc) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, bah) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, cdb), cdc)) → new_esEs6(zzz4001, zzz3001, cdb, cdc)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), cde, cdf) → new_pePe(new_lt20(zzz400000, zzz3300000, cde), new_asAs(new_esEs26(zzz400000, zzz3300000, cde), new_ltEs20(zzz400001, zzz3300001, cdf)))
new_compare25(zzz400000, zzz3300000, True, db, dc, dd) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, bah)) → new_esEs4(zzz4000, zzz3000, bah)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bdc)) → new_esEs13(zzz4002, zzz3002, bdc)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, hh, baa) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, ccd)) → new_esEs13(zzz4001, zzz3001, ccd)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cah), cba)) → new_esEs7(zzz4000, zzz3000, cah, cba)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cbh), cca)) → new_esEs6(zzz4000, zzz3000, cbh, cca)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, bag)) → new_esEs13(zzz4000, zzz3000, bag)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_esEs13(zzz400000, zzz3300000, ceb)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cgf), cdh) → new_ltEs10(zzz400000, zzz3300000, cgf)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, fa) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bf) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bf), bf)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dcb)) → new_esEs10(zzz4000, zzz3000, dcb)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, cad), cae)) → new_ltEs15(zzz400000, zzz3300000, cad, cae)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, cfd)) → new_ltEs11(zzz400001, zzz3300001, cfd)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_Either, gf), gg)) → new_esEs7(zzz4000, zzz3000, gf, gg)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], bhd)) → new_ltEs10(zzz400000, zzz3300000, bhd)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, cdh) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], bb)) → new_lt4(zzz400000, zzz3300000, bb)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, bah) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bf) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bf))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_lt5(zzz400000, zzz3300000, bc)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(app(ty_@3, dac), dad), dae)) → new_ltEs13(zzz400000, zzz3300000, dac, dad, dae)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Ratio, gh)) → new_esEs13(zzz4000, zzz3000, gh)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, bah) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, fd), fa) → new_esEs13(zzz4000, zzz3000, fd)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, gc), gd), fa) → new_esEs6(zzz4000, zzz3000, gc, gd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ec), ed), ee)) → new_esEs5(zzz4000, zzz3000, ec, ed, ee)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, hh, baa) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, cdh) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, bd, be) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bec, bed, bee) → new_pePe(new_lt14(zzz400000, zzz3300000, bec), new_asAs(new_esEs22(zzz400000, zzz3300000, bec), new_pePe(new_lt13(zzz400001, zzz3300001, bed), new_asAs(new_esEs23(zzz400001, zzz3300001, bed), new_ltEs18(zzz400002, zzz3300002, bee)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cgh), cdh) → new_ltEs8(zzz400000, zzz3300000, cgh)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_esEs5(zzz400000, zzz3300000, db, dc, dd)
new_compare([], [], bf) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, ce), cf)) → new_compare16(zzz400000, zzz3300000, ce, cf)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_esEs7(zzz400000, zzz3300000, cfa, cfb)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), df) → False
new_esEs10(:(zzz4000, zzz4001), [], df) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dbc), dbd)) → new_esEs7(zzz4000, zzz3000, dbc, dbd)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_@2, hf), hg)) → new_esEs6(zzz4000, zzz3000, hf, hg)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_esEs4(zzz400000, zzz3300000, bef)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, cce)) → new_esEs4(zzz4001, zzz3001, cce)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, bhe)) → new_ltEs11(zzz400000, zzz3300000, bhe)
new_compare10(zzz400000, zzz3300000, False, bd, be) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), caf, cag) → new_asAs(new_esEs24(zzz4000, zzz3000, caf), new_esEs25(zzz4001, zzz3001, cag))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, bh)) → new_compare5(zzz400000, zzz3300000, bh)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, bha), bhb)) → new_ltEs15(zzz400002, zzz3300002, bha, bhb)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], df) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, cdh) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, fa) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz4000, zzz3000, bbe, bbf)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbg), dbh), dca)) → new_esEs5(zzz4000, zzz3000, dbg, dbh, dca)
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, hh, baa) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bhc) → False
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_compare31(zzz330, h) → new_compare27(Nothing, zzz330, new_esEs30(zzz330, h), h)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, eb)) → new_esEs4(zzz4000, zzz3000, eb)
new_compare24(zzz400000, zzz3300000, False, bd, be) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, bd, be), bd, be)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_lt5(zzz400000, zzz3300000, ceb)
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_lt8(zzz400000, zzz3300000, db, dc, dd)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_esEs13(zzz400000, zzz3300000, bc)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cbb)) → new_esEs13(zzz4000, zzz3000, cbb)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dcc), dcd)) → new_esEs6(zzz4000, zzz3000, dcc, dcd)
new_gt1(zzz330, h) → new_esEs8(new_compare31(zzz330, h), GT)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, fa) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_esEs6(zzz400000, zzz3300000, bd, be)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, db, dc, dd) → new_esEs8(new_compare14(zzz400000, zzz3300000, db, dc, dd), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, bgb)) → new_ltEs11(zzz400002, zzz3300002, bgb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Maybe, ha)) → new_esEs4(zzz4000, zzz3000, ha)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cb), cc), cd)) → new_compare14(zzz400000, zzz3300000, cb, cc, cd)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, bah) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, bah), bah)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs13(zzz40000, zzz330000, bec, bed, bee)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), df) → new_asAs(new_esEs11(zzz4000, zzz3000, df), new_esEs10(zzz4001, zzz3001, df))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, bd, be) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, bd, be), bd, be)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, hh, baa) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, fa) → new_esEs18(zzz4000, zzz3000)
new_compare110(zzz195, zzz196, True, de) → LT
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, fa) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bf)) → new_ltEs10(zzz40000, zzz330000, bf)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_esEs6(zzz400001, zzz3300001, bfe, bff)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_lt5(zzz400001, zzz3300001, beh)
new_esEs23(zzz400001, zzz3300001, app(ty_[], beg)) → new_esEs10(zzz400001, zzz3300001, beg)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, cdg), cdh)) → new_ltEs15(zzz40000, zzz330000, cdg, cdh)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_lt17(zzz400001, zzz3300001, bfe, bff)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, bcc), bcd), bce)) → new_esEs5(zzz4001, zzz3001, bcc, bcd, bce)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs5(zzz4002, zzz3002, bde, bdf, bdg)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), bab, bac, bad) → new_asAs(new_esEs19(zzz4000, zzz3000, bab), new_asAs(new_esEs20(zzz4001, zzz3001, bac), new_esEs21(zzz4002, zzz3002, bad)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, fa) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, cha), chb), chc), cdh) → new_ltEs13(zzz400000, zzz3300000, cha, chb, chc)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bhc)) → new_ltEs8(zzz40000, zzz330000, bhc)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_lt18(zzz400000, zzz3300000, cfa, cfb)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], bcf)) → new_esEs10(zzz4001, zzz3001, bcf)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, dbb) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, fa) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dbe)) → new_esEs13(zzz4000, zzz3000, dbe)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, hh, baa) → new_esEs8(new_compare17(zzz400000, zzz3300000, hh, baa), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bda), bdb)) → new_esEs7(zzz4002, zzz3002, bda, bdb)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, bgd), bge), bgf)) → new_ltEs13(zzz400002, zzz3300002, bgd, bge, bgf)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_lt15(zzz400001, zzz3300001, bfa)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, db, dc, dd) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, de) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_lt17(zzz400000, zzz3300000, bd, be)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, cff), cfg), cfh)) → new_ltEs13(zzz400001, zzz3300001, cff, cfg, cfh)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, dg), dh)) → new_esEs7(zzz4000, zzz3000, dg, dh)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_lt15(zzz400000, zzz3300000, bef)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], bga)) → new_ltEs10(zzz400002, zzz3300002, bga)
new_esEs24(zzz4000, zzz3000, app(ty_[], cbg)) → new_esEs10(zzz4000, zzz3000, cbg)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, bdd)) → new_esEs4(zzz4002, zzz3002, bdd)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, bbg), bbh)) → new_esEs7(zzz4001, zzz3001, bbg, bbh)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, cgc), cgd)) → new_ltEs15(zzz400001, zzz3300001, cgc, cgd)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, eg), eh)) → new_esEs6(zzz4000, zzz3000, eg, eh)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_[], chh)) → new_ltEs10(zzz400000, zzz3300000, chh)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, bhf)) → new_ltEs8(zzz400000, zzz3300000, bhf)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cge) → new_asAs(new_esEs27(zzz4000, zzz3000, cge), new_esEs28(zzz4001, zzz3001, cge))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, db, dc, dd) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, cab), cac)) → new_ltEs4(zzz400000, zzz3300000, cab, cac)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], bb)) → new_esEs10(zzz400000, zzz3300000, bb)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_lt20(zzz400000, zzz3300000, app(ty_[], cea)) → new_lt4(zzz400000, zzz3300000, cea)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, cg), da)) → new_compare17(zzz400000, zzz3300000, cg, da)
new_compare25(zzz400000, zzz3300000, False, db, dc, dd) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, db, dc, dd) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, fa) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, ea)) → new_esEs13(zzz4000, zzz3000, ea)
new_esEs30(Just(zzz3300), h) → False
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cgg), cdh) → new_ltEs11(zzz400000, zzz3300000, cgg)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, bgc)) → new_ltEs8(zzz400002, zzz3300002, bgc)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bhc) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, ccf), ccg), cch)) → new_esEs5(zzz4001, zzz3001, ccf, ccg, cch)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, cdh) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_Either, dah), dba)) → new_ltEs15(zzz400000, zzz3300000, dah, dba)
new_compare27(zzz4000, zzz33000, True, bah) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Ratio, daa)) → new_ltEs11(zzz400000, zzz3300000, daa)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_esEs5(zzz400000, zzz3300000, ced, cee, cef)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], ef)) → new_esEs10(zzz4000, zzz3000, ef)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_esEs6(zzz400000, zzz3300000, ceg, ceh)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_esEs5(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, chf), chg), cdh) → new_ltEs15(zzz400000, zzz3300000, chf, chg)
new_ltEs15(Left(zzz400000), Right(zzz3300000), cdg, cdh) → True
new_esEs30(Nothing, h) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, bgg), bgh)) → new_ltEs4(zzz400002, zzz3300002, bgg, bgh)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, bd, be) → new_esEs8(new_compare16(zzz400000, zzz3300000, bd, be), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_lt5(zzz400000, zzz3300000, bc) → new_esEs8(new_compare5(zzz400000, zzz3300000, bc), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, ccb), ccc)) → new_esEs7(zzz4001, zzz3001, ccb, ccc)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), cdg, cdh) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, chd), che), cdh) → new_ltEs4(zzz400000, zzz3300000, chd, che)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, cdh) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_esEs24(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, app(ty_Ratio, x2))
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Zero, x0)
new_pePe(True, x0)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_compare26(x0, x1, False, x2, x3)
new_lt13(x0, x1, ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs12(False, False)
new_esEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs22(x0, x1, ty_Integer)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_compare27(Nothing, Nothing, False, x0)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare25(x0, x1, False, x2, x3, x4)
new_esEs8(GT, GT)
new_primMulInt(Pos(x0), Pos(x1))
new_compare(:(x0, x1), [], x2)
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt10(x0, x1)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_esEs19(x0, x1, ty_Int)
new_ltEs7(x0, x1)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], :(x0, x1), x2)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs18(x0, x1, ty_Int)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_compare11(x0, x1, app(ty_[], x2))
new_gt1(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs10(:(x0, x1), [], x2)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(LT, EQ)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs18(x0, x1)
new_ltEs10(x0, x1, x2)
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_esEs19(x0, x1, ty_Ordering)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_compare114(x0, x1, False, x2, x3)
new_esEs22(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_compare114(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Char)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Nothing, Nothing, x0)
new_primMulNat0(Zero, Zero)
new_compare([], :(x0, x1), x2)
new_lt19(x0, x1)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare27(Just(x0), Just(x1), False, x2)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_primMulNat0(Zero, Succ(x0))
new_compare31(x0, x1)
new_compare11(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Bool)
new_compare(:(x0, x1), :(x2, x3), x4)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs14(@0, @0)
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare12(Float(x0, x1), Float(x2, x3))
new_compare27(x0, x1, True, x2)
new_esEs19(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt8(x0, x1, x2, x3, x4)
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs23(x0, x1, ty_Ordering)
new_compare110(x0, x1, True, x2)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs11(x0, x1, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare13(x0, x1, x2)
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_pePe(False, x0)
new_lt4(x0, x1, x2)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs30(Nothing, x0)
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs18(x0, x1, ty_Char)
new_esEs19(x0, x1, app(ty_[], x2))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs23(x0, x1, ty_Float)
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_primMulNat0(Succ(x0), Zero)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_primPlusNat1(Zero, Zero)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Float)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_primCompAux1(x0, x1, x2, x3)
new_ltEs20(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(ty_[], x2))
new_compare16(x0, x1, x2, x3)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Nothing, x1)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs8(Nothing, Just(x0), x1)
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_esEs4(Nothing, Nothing, x0)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs9(x0, x1)
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_compare27(Nothing, Just(x0), False, x1)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt16(x0, x1)
new_compare17(x0, x1, x2, x3)
new_compare18(Integer(x0), Integer(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt13(x0, x1, ty_Int)
new_lt5(x0, x1, x2)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, False, x2, x3, x4)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_lt14(x0, x1, ty_Integer)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt14(x0, x1, app(ty_Ratio, x2))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqNat0(Succ(x0), Succ(x1))
new_compare14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Ordering)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Int)
new_compare110(x0, x1, False, x2)
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(False, x0)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_lt15(x0, x1, x2)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_compare24(x0, x1, True, x2, x3)
new_compare113(x0, x1, True)
new_esEs4(Just(x0), Nothing, x1)
new_lt13(x0, x1, ty_Float)
new_esEs30(Just(x0), x1)
new_primCmpNat0(Zero, Succ(x0))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs25(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_compare27(Just(x0), Nothing, False, x1)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs22(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_lt18(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt17(x0, x1, x2, x3)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, False)
new_esEs12(False, True)
new_compare28(x0, x1, True)
new_sr(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs21(x0, x1, ty_Integer)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs14(False, False)
new_compare([], [], x0)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs5(x0, x1)
new_esEs25(x0, x1, ty_Int)
new_esEs11(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_esEs11(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux0(x0, EQ)
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, True, x2, x3, x4)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs21(x0, x1, ty_@0)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_lt13(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_lt14(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], [], x0)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1, ty_@0)
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Nothing, Just(x0), x1)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs23(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_esEs19(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_compare10(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare10(x0, x1, False, x2, x3)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare113(x0, x1, False)
new_compare26(x0, x1, True, x2, x3)
new_ltEs12(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare11(x0, x1, ty_Bool)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
new_splitGT10(zzz340, zzz341, zzz342, zzz343, zzz344, True, h, ba) → new_splitGT0(zzz343, h, ba)
new_splitGT20(zzz340, zzz341, zzz342, zzz343, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), True, h, ba) → new_splitGT20(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, new_gt1(zzz3440, h), h, ba)
new_splitGT0(Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), h, ba) → new_splitGT20(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, new_gt1(zzz3440, h), h, ba)
new_splitGT20(zzz340, zzz341, zzz342, zzz343, zzz344, False, h, ba) → new_splitGT10(zzz340, zzz341, zzz342, zzz343, zzz344, new_lt15(Nothing, zzz340, h), h, ba)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, dbf)) → new_esEs4(zzz4000, zzz3000, dbf)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_esEs7(zzz400001, zzz3300001, bfg, bfh)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, fb), fc), fa) → new_esEs7(zzz4000, zzz3000, fb, fc)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, cdd)) → new_ltEs11(zzz40000, zzz330000, cdd)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, bea), beb)) → new_esEs6(zzz4002, zzz3002, bea, beb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Maybe, dab)) → new_ltEs8(zzz400000, zzz3300000, dab)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, cbd), cbe), cbf)) → new_esEs5(zzz4000, zzz3000, cbd, cbe, cbf)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, ff), fa) → new_esEs4(zzz4000, zzz3000, ff)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], cfc)) → new_ltEs10(zzz400001, zzz3300001, cfc)
new_compare([], :(zzz3300000, zzz3300001), bf) → LT
new_compare10(zzz400000, zzz3300000, True, bd, be) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, bhg), bhh), caa)) → new_ltEs13(zzz400000, zzz3300000, bhg, bhh, caa)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_lt8(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, cbc)) → new_esEs4(zzz4000, zzz3000, cbc)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs4(Nothing, Just(zzz3000), dbb) → False
new_esEs4(Just(zzz4000), Nothing, dbb) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_lt8(zzz400000, zzz3300000, ced, cee, cef)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, fg), fh), ga), fa) → new_esEs5(zzz4000, zzz3000, fg, fh, ga)
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bf) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_esEs13(zzz400001, zzz3300001, beh)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, bcb)) → new_esEs4(zzz4001, zzz3001, bcb)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, cdh) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bdh)) → new_esEs10(zzz4002, zzz3002, bdh)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, cfe)) → new_ltEs8(zzz400001, zzz3300001, cfe)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, ca)) → new_compare13(zzz400000, zzz3300000, ca)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_lt18(zzz400000, zzz3300000, hh, baa)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_esEs4(zzz400001, zzz3300001, bfa)
new_compare26(zzz400000, zzz3300000, False, hh, baa) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_[], he)) → new_esEs10(zzz4000, zzz3000, he)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, cdh) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(app(ty_@3, hb), hc), hd)) → new_esEs5(zzz4000, zzz3000, hb, hc, hd)
new_esEs26(zzz400000, zzz3300000, app(ty_[], cea)) → new_esEs10(zzz400000, zzz3300000, cea)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, bca)) → new_esEs13(zzz4001, zzz3001, bca)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, bfg), bfh)) → new_lt18(zzz400001, zzz3300001, bfg, bfh)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_lt15(zzz400000, zzz3300000, cec)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs5(zzz4000, zzz3000, bba, bbb, bbc)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, cec)) → new_esEs4(zzz400000, zzz3300000, cec)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, bcg), bch)) → new_esEs6(zzz4001, zzz3001, bcg, bch)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_@2, daf), dag)) → new_ltEs4(zzz400000, zzz3300000, daf, dag)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, hh), baa)) → new_esEs7(zzz400000, zzz3300000, hh, baa)
new_lt13(zzz400001, zzz3300001, app(ty_[], beg)) → new_lt4(zzz400001, zzz3300001, beg)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, cdh) → new_ltEs6(zzz400000, zzz3300000)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], cda)) → new_esEs10(zzz4001, zzz3001, cda)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], bbd)) → new_esEs10(zzz4000, zzz3000, bbd)
new_compare27(Just(zzz40000), Just(zzz330000), False, bah) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, bah), bah)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], gb), fa) → new_esEs10(zzz4000, zzz3000, gb)
new_esEs7(Left(zzz4000), Right(zzz3000), ge, fa) → False
new_esEs7(Right(zzz4000), Left(zzz3000), ge, fa) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], bg)) → new_compare(zzz400000, zzz3300000, bg)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, bah) → new_esEs8(new_compare13(zzz4000, zzz33000, bah), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, cde), cdf)) → new_ltEs4(zzz40000, zzz330000, cde, cdf)
new_lt4(zzz400000, zzz3300000, bb) → new_esEs8(new_compare(zzz400000, zzz3300000, bb), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bf) → new_fsEs(new_compare(zzz40000, zzz330000, bf))
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_lt17(zzz400000, zzz3300000, ceg, ceh)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, bae), baf)) → new_esEs7(zzz4000, zzz3000, bae, baf)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, cga), cgb)) → new_ltEs4(zzz400001, zzz3300001, cga, cgb)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_ltEs11(zzz40000, zzz330000, cdd) → new_fsEs(new_compare5(zzz40000, zzz330000, cdd))
new_ltEs8(Nothing, Just(zzz3300000), bhc) → True
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_compare27(Nothing, Just(zzz330000), False, bah) → LT
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, cdb), cdc)) → new_esEs6(zzz4001, zzz3001, cdb, cdc)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), cde, cdf) → new_pePe(new_lt20(zzz400000, zzz3300000, cde), new_asAs(new_esEs26(zzz400000, zzz3300000, cde), new_ltEs20(zzz400001, zzz3300001, cdf)))
new_compare25(zzz400000, zzz3300000, True, db, dc, dd) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, bah)) → new_esEs4(zzz4000, zzz3000, bah)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bdc)) → new_esEs13(zzz4002, zzz3002, bdc)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_compare17(zzz400000, zzz3300000, hh, baa) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, hh, baa), hh, baa)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, ccd)) → new_esEs13(zzz4001, zzz3001, ccd)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, cah), cba)) → new_esEs7(zzz4000, zzz3000, cah, cba)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, cbh), cca)) → new_esEs6(zzz4000, zzz3000, cbh, cca)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, bag)) → new_esEs13(zzz4000, zzz3000, bag)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_esEs13(zzz400000, zzz3300000, ceb)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cgf), cdh) → new_ltEs10(zzz400000, zzz3300000, cgf)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, fa) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bf) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bf), bf)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], dcb)) → new_esEs10(zzz4000, zzz3000, dcb)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, cad), cae)) → new_ltEs15(zzz400000, zzz3300000, cad, cae)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, cfd)) → new_ltEs11(zzz400001, zzz3300001, cfd)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_Either, gf), gg)) → new_esEs7(zzz4000, zzz3000, gf, gg)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], bhd)) → new_ltEs10(zzz400000, zzz3300000, bhd)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, cdh) → new_ltEs5(zzz400000, zzz3300000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], bb)) → new_lt4(zzz400000, zzz3300000, bb)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_compare27(Just(zzz40000), Nothing, False, bah) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bf) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bf))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_lt5(zzz400000, zzz3300000, bc)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(app(ty_@3, dac), dad), dae)) → new_ltEs13(zzz400000, zzz3300000, dac, dad, dae)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Ratio, gh)) → new_esEs13(zzz4000, zzz3000, gh)
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_compare27(Nothing, Nothing, False, bah) → LT
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, fd), fa) → new_esEs13(zzz4000, zzz3000, fd)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, gc), gd), fa) → new_esEs6(zzz4000, zzz3000, gc, gd)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ec), ed), ee)) → new_esEs5(zzz4000, zzz3000, ec, ed, ee)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primCompAux0(zzz220, GT) → GT
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_esEs8(EQ, EQ) → True
new_compare26(zzz400000, zzz3300000, True, hh, baa) → EQ
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, cdh) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, bd, be) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bec, bed, bee) → new_pePe(new_lt14(zzz400000, zzz3300000, bec), new_asAs(new_esEs22(zzz400000, zzz3300000, bec), new_pePe(new_lt13(zzz400001, zzz3300001, bed), new_asAs(new_esEs23(zzz400001, zzz3300001, bed), new_ltEs18(zzz400002, zzz3300002, bee)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cgh), cdh) → new_ltEs8(zzz400000, zzz3300000, cgh)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_esEs5(zzz400000, zzz3300000, db, dc, dd)
new_compare([], [], bf) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, ce), cf)) → new_compare16(zzz400000, zzz3300000, ce, cf)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_esEs7(zzz400000, zzz3300000, cfa, cfb)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10([], :(zzz3000, zzz3001), df) → False
new_esEs10(:(zzz4000, zzz4001), [], df) → False
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dbc), dbd)) → new_esEs7(zzz4000, zzz3000, dbc, dbd)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(app(ty_@2, hf), hg)) → new_esEs6(zzz4000, zzz3000, hf, hg)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_esEs4(zzz400000, zzz3300000, bef)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, cce)) → new_esEs4(zzz4001, zzz3001, cce)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, bhe)) → new_ltEs11(zzz400000, zzz3300000, bhe)
new_compare10(zzz400000, zzz3300000, False, bd, be) → GT
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), caf, cag) → new_asAs(new_esEs24(zzz4000, zzz3000, caf), new_esEs25(zzz4001, zzz3001, cag))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, bh)) → new_compare5(zzz400000, zzz3300000, bh)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, bha), bhb)) → new_ltEs15(zzz400002, zzz3300002, bha, bhb)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_esEs10([], [], df) → True
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, cdh) → new_ltEs12(zzz400000, zzz3300000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, fa) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz4000, zzz3000, bbe, bbf)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dbg), dbh), dca)) → new_esEs5(zzz4000, zzz3000, dbg, dbh, dca)
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, hh, baa) → LT
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bhc) → False
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_compare31(zzz330, h) → new_compare27(Nothing, zzz330, new_esEs30(zzz330, h), h)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, eb)) → new_esEs4(zzz4000, zzz3000, eb)
new_compare24(zzz400000, zzz3300000, False, bd, be) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, bd, be), bd, be)
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, ceb)) → new_lt5(zzz400000, zzz3300000, ceb)
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, db), dc), dd)) → new_lt8(zzz400000, zzz3300000, db, dc, dd)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, bc)) → new_esEs13(zzz400000, zzz3300000, bc)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, cbb)) → new_esEs13(zzz4000, zzz3000, cbb)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dcc), dcd)) → new_esEs6(zzz4000, zzz3000, dcc, dcd)
new_gt1(zzz330, h) → new_esEs8(new_compare31(zzz330, h), GT)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, fa) → new_esEs15(zzz4000, zzz3000)
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_esEs6(zzz400000, zzz3300000, bd, be)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, db, dc, dd) → new_esEs8(new_compare14(zzz400000, zzz3300000, db, dc, dd), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, bgb)) → new_ltEs11(zzz400002, zzz3300002, bgb)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, app(ty_Maybe, ha)) → new_esEs4(zzz4000, zzz3000, ha)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cb), cc), cd)) → new_compare14(zzz400000, zzz3300000, cb, cc, cd)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_compare13(zzz4000, zzz33000, bah) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, bah), bah)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs13(zzz40000, zzz330000, bec, bed, bee)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), df) → new_asAs(new_esEs11(zzz4000, zzz3000, df), new_esEs10(zzz4001, zzz3001, df))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_compare16(zzz400000, zzz3300000, bd, be) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, bd, be), bd, be)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, hh, baa) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, fa) → new_esEs18(zzz4000, zzz3000)
new_compare110(zzz195, zzz196, True, de) → LT
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, fa) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bf)) → new_ltEs10(zzz40000, zzz330000, bf)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_esEs6(zzz400001, zzz3300001, bfe, bff)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, beh)) → new_lt5(zzz400001, zzz3300001, beh)
new_esEs23(zzz400001, zzz3300001, app(ty_[], beg)) → new_esEs10(zzz400001, zzz3300001, beg)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, cdg), cdh)) → new_ltEs15(zzz40000, zzz330000, cdg, cdh)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, bfe), bff)) → new_lt17(zzz400001, zzz3300001, bfe, bff)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, bcc), bcd), bce)) → new_esEs5(zzz4001, zzz3001, bcc, bcd, bce)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs5(zzz4002, zzz3002, bde, bdf, bdg)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ge, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), bab, bac, bad) → new_asAs(new_esEs19(zzz4000, zzz3000, bab), new_asAs(new_esEs20(zzz4001, zzz3001, bac), new_esEs21(zzz4002, zzz3002, bad)))
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, fa) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, cha), chb), chc), cdh) → new_ltEs13(zzz400000, zzz3300000, cha, chb, chc)
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bhc)) → new_ltEs8(zzz40000, zzz330000, bhc)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_ltEs6(LT, LT) → True
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, cfa), cfb)) → new_lt18(zzz400000, zzz3300000, cfa, cfb)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], bcf)) → new_esEs10(zzz4001, zzz3001, bcf)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, dbb) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, fa) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, dbe)) → new_esEs13(zzz4000, zzz3000, dbe)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt18(zzz400000, zzz3300000, hh, baa) → new_esEs8(new_compare17(zzz400000, zzz3300000, hh, baa), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bda), bdb)) → new_esEs7(zzz4002, zzz3002, bda, bdb)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, bgd), bge), bgf)) → new_ltEs13(zzz400002, zzz3300002, bgd, bge, bgf)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, bfa)) → new_lt15(zzz400001, zzz3300001, bfa)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, db, dc, dd) → LT
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, de) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, bd), be)) → new_lt17(zzz400000, zzz3300000, bd, be)
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, cff), cfg), cfh)) → new_ltEs13(zzz400001, zzz3300001, cff, cfg, cfh)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, dg), dh)) → new_esEs7(zzz4000, zzz3000, dg, dh)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, bef)) → new_lt15(zzz400000, zzz3300000, bef)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], bga)) → new_ltEs10(zzz400002, zzz3300002, bga)
new_esEs24(zzz4000, zzz3000, app(ty_[], cbg)) → new_esEs10(zzz4000, zzz3000, cbg)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, bdd)) → new_esEs4(zzz4002, zzz3002, bdd)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, bbg), bbh)) → new_esEs7(zzz4001, zzz3001, bbg, bbh)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, cgc), cgd)) → new_ltEs15(zzz400001, zzz3300001, cgc, cgd)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, eg), eh)) → new_esEs6(zzz4000, zzz3000, eg, eh)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_[], chh)) → new_ltEs10(zzz400000, zzz3300000, chh)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, bhf)) → new_ltEs8(zzz400000, zzz3300000, bhf)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cge) → new_asAs(new_esEs27(zzz4000, zzz3000, cge), new_esEs28(zzz4001, zzz3001, cge))
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_asAs(False, zzz202) → False
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, db, dc, dd) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, cab), cac)) → new_ltEs4(zzz400000, zzz3300000, cab, cac)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(ty_[], bb)) → new_esEs10(zzz400000, zzz3300000, bb)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_lt20(zzz400000, zzz3300000, app(ty_[], cea)) → new_lt4(zzz400000, zzz3300000, cea)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, cg), da)) → new_compare17(zzz400000, zzz3300000, cg, da)
new_compare25(zzz400000, zzz3300000, False, db, dc, dd) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, db, dc, dd), db, dc, dd)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_ltEs6(LT, GT) → True
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, False, db, dc, dd) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs12(True, False) → False
new_esEs12(False, True) → False
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, fa) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, ea)) → new_esEs13(zzz4000, zzz3000, ea)
new_esEs30(Just(zzz3300), h) → False
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cgg), cdh) → new_ltEs11(zzz400000, zzz3300000, cgg)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, bgc)) → new_ltEs8(zzz400002, zzz3300002, bgc)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bhc) → True
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, ccf), ccg), cch)) → new_esEs5(zzz4001, zzz3001, ccf, ccg, cch)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, cdh) → new_ltEs16(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(app(ty_Either, dah), dba)) → new_ltEs15(zzz400000, zzz3300000, dah, dba)
new_compare27(zzz4000, zzz33000, True, bah) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, app(ty_Ratio, daa)) → new_ltEs11(zzz400000, zzz3300000, daa)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_ltEs6(GT, LT) → False
new_asAs(True, zzz202) → zzz202
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, ced), cee), cef)) → new_esEs5(zzz400000, zzz3300000, ced, cee, cef)
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], ef)) → new_esEs10(zzz4000, zzz3000, ef)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), cdg, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, ceg), ceh)) → new_esEs6(zzz400000, zzz3300000, ceg, ceh)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, bfb), bfc), bfd)) → new_esEs5(zzz400001, zzz3300001, bfb, bfc, bfd)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, chf), chg), cdh) → new_ltEs15(zzz400000, zzz3300000, chf, chg)
new_ltEs15(Left(zzz400000), Right(zzz3300000), cdg, cdh) → True
new_esEs30(Nothing, h) → True
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, bgg), bgh)) → new_ltEs4(zzz400002, zzz3300002, bgg, bgh)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, bd, be) → new_esEs8(new_compare16(zzz400000, zzz3300000, bd, be), LT)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_lt5(zzz400000, zzz3300000, bc) → new_esEs8(new_compare5(zzz400000, zzz3300000, bc), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, ccb), ccc)) → new_esEs7(zzz4001, zzz3001, ccb, ccc)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), cdg, cdh) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, chd), che), cdh) → new_ltEs4(zzz400000, zzz3300000, chd, che)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, cdh) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_esEs24(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, app(ty_Ratio, x2))
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_primPlusNat0(Succ(x0), x1)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Zero, x0)
new_pePe(True, x0)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_compare26(x0, x1, False, x2, x3)
new_lt13(x0, x1, ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs12(False, False)
new_esEs20(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_esEs20(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Int)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs22(x0, x1, ty_Integer)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_compare27(Nothing, Nothing, False, x0)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare25(x0, x1, False, x2, x3, x4)
new_esEs8(GT, GT)
new_primMulInt(Pos(x0), Pos(x1))
new_compare(:(x0, x1), [], x2)
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt10(x0, x1)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_esEs19(x0, x1, ty_Int)
new_ltEs7(x0, x1)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_compare11(x0, x1, ty_@0)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], :(x0, x1), x2)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs18(x0, x1, ty_Int)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs8(GT, LT)
new_esEs8(LT, GT)
new_lt14(x0, x1, ty_Int)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_compare11(x0, x1, app(ty_[], x2))
new_gt1(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs10(:(x0, x1), [], x2)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(LT, EQ)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs6(EQ, LT)
new_lt7(x0, x1)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs18(x0, x1)
new_ltEs10(x0, x1, x2)
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_esEs19(x0, x1, ty_Ordering)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_compare114(x0, x1, False, x2, x3)
new_esEs22(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_compare114(x0, x1, True, x2, x3)
new_lt20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Char)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Nothing, Nothing, x0)
new_primMulNat0(Zero, Zero)
new_compare([], :(x0, x1), x2)
new_lt19(x0, x1)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare27(Just(x0), Just(x1), False, x2)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_ltEs18(x0, x1, ty_Bool)
new_primMulNat0(Zero, Succ(x0))
new_compare31(x0, x1)
new_compare11(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Bool)
new_compare(:(x0, x1), :(x2, x3), x4)
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs14(@0, @0)
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare12(Float(x0, x1), Float(x2, x3))
new_compare27(x0, x1, True, x2)
new_esEs19(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt8(x0, x1, x2, x3, x4)
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_esEs23(x0, x1, ty_Ordering)
new_compare110(x0, x1, True, x2)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs11(x0, x1, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare13(x0, x1, x2)
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_pePe(False, x0)
new_lt4(x0, x1, x2)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs30(Nothing, x0)
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs18(x0, x1, ty_Char)
new_esEs19(x0, x1, app(ty_[], x2))
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs23(x0, x1, ty_Float)
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_primMulNat0(Succ(x0), Zero)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_primPlusNat1(Zero, Zero)
new_ltEs18(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Float)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_primCompAux1(x0, x1, x2, x3)
new_ltEs20(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(ty_[], x2))
new_compare16(x0, x1, x2, x3)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Nothing, x1)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs20(x0, x1, ty_Int)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs8(Nothing, Just(x0), x1)
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_esEs4(Nothing, Nothing, x0)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Double)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs9(x0, x1)
new_esEs25(x0, x1, ty_Float)
new_compare11(x0, x1, ty_Integer)
new_compare27(Nothing, Just(x0), False, x1)
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt16(x0, x1)
new_compare17(x0, x1, x2, x3)
new_compare18(Integer(x0), Integer(x1))
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs12(True, True)
new_esEs24(x0, x1, ty_Integer)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs24(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt13(x0, x1, ty_Int)
new_lt5(x0, x1, x2)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, False, x2, x3, x4)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_lt14(x0, x1, ty_Integer)
new_ltEs18(x0, x1, ty_@0)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_lt14(x0, x1, app(ty_Ratio, x2))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqNat0(Succ(x0), Succ(x1))
new_compare14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Ordering)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs8(EQ, EQ)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Int)
new_compare110(x0, x1, False, x2)
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(False, x0)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_lt15(x0, x1, x2)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_compare24(x0, x1, True, x2, x3)
new_compare113(x0, x1, True)
new_esEs4(Just(x0), Nothing, x1)
new_lt13(x0, x1, ty_Float)
new_esEs30(Just(x0), x1)
new_primCmpNat0(Zero, Succ(x0))
new_lt14(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs25(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Int)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_compare27(Just(x0), Nothing, False, x1)
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs22(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_Int)
new_lt13(x0, x1, ty_Integer)
new_lt18(x0, x1, x2, x3)
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Char)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt17(x0, x1, x2, x3)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(True, False)
new_esEs12(False, True)
new_compare28(x0, x1, True)
new_sr(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs21(x0, x1, ty_Integer)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs14(False, False)
new_compare([], [], x0)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs5(x0, x1)
new_esEs25(x0, x1, ty_Int)
new_esEs11(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_esEs11(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux0(x0, EQ)
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, True, x2, x3, x4)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs21(x0, x1, ty_@0)
new_ltEs6(EQ, GT)
new_ltEs6(GT, EQ)
new_lt13(x0, x1, app(ty_[], x2))
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_lt14(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs10([], [], x0)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1, ty_@0)
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_esEs25(x0, x1, ty_Double)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(Nothing, Just(x0), x1)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs23(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_lt20(x0, x1, ty_Int)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_esEs19(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs22(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_compare10(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_primEqNat0(Succ(x0), Zero)
new_esEs22(x0, x1, ty_@0)
new_compare10(x0, x1, False, x2, x3)
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare113(x0, x1, False)
new_compare26(x0, x1, True, x2, x3)
new_ltEs12(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare11(x0, x1, ty_Bool)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
From the DPs we obtained the following set of size-change graphs:
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, zzz268, zzz269, False, bh, ca, cb) → new_intersectFM_C2IntersectFM_C17(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, zzz268, zzz269, new_gt0(zzz260, zzz265, bh), bh, ca, cb)
new_intersectFM_C2IntersectFM_C18(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, EmptyFM, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Lts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz263, bh, ca)
new_intersectFM_C2IntersectFM_C15(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, zzz253, zzz254, True, be, bf, bg) → new_intersectFM_C2IntersectFM_C16(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz254, be, bf, bg)
new_intersectFM_C2IntersectFM_C110(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, EmptyFM, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Gts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz282, cc, cd)
new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), zzz287, True, cc, cd, ce) → new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, new_lt15(Just(zzz278), zzz2860, cc), cc, cd, ce)
new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, EmptyFM, zzz254, True, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Gts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz249, be, bf)
new_intersectFM_C2IntersectFM_C11(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, EmptyFM, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Gts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz361, h, ba)
new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, EmptyFM, zzz269, True, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Lts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz263, bh, ca)
new_intersectFM_C2IntersectFM_C11(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, Branch(zzz3650, zzz3651, zzz3652, zzz3653, zzz3654), h, ba, bb) → new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz3650, zzz3651, zzz3652, zzz3653, zzz3654, new_lt15(Nothing, zzz3650, h), h, ba, bb)
new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, EmptyFM, zzz287, True, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Lts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz281, cc, cd)
new_intersectFM_C2IntersectFM_C16(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, EmptyFM, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Gts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz249, be, bf)
new_intersectFM_C2IntersectFM_C17(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, zzz268, zzz269, False, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Gts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz264, bh, ca)
new_intersectFM_C(Branch(Just(zzz300), zzz31, zzz32, zzz33, zzz34), Branch(Just(zzz400), zzz41, zzz42, zzz43, zzz44), bc, bd) → new_intersectFM_C2IntersectFM_C14(zzz300, zzz31, zzz32, zzz33, zzz34, zzz400, zzz41, zzz42, zzz43, zzz44, Just(zzz300), zzz31, zzz32, zzz33, zzz34, new_esEs8(new_compare27(Just(zzz400), Just(zzz300), new_esEs31(zzz400, zzz300, bc), bc), LT), bc, bd, bd)
new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, EmptyFM, zzz366, True, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Lts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz360, h, ba)
new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, zzz365, zzz366, False, h, ba, bb) → new_intersectFM_C2IntersectFM_C10(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, zzz365, zzz366, new_gt1(zzz362, h), h, ba, bb)
new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, Branch(zzz2680, zzz2681, zzz2682, zzz2683, zzz2684), zzz269, True, bh, ca, cb) → new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz2680, zzz2681, zzz2682, zzz2683, zzz2684, new_lt15(Just(zzz260), zzz2680, bh), bh, ca, cb)
new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, Branch(zzz2530, zzz2531, zzz2532, zzz2533, zzz2534), zzz254, True, be, bf, bg) → new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz2530, zzz2531, zzz2532, zzz2533, zzz2534, new_lt15(Nothing, zzz2530, be), be, bf, bg)
new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, zzz286, zzz287, False, cc, cd, ce) → new_intersectFM_C2IntersectFM_C19(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, zzz286, zzz287, new_gt0(zzz278, zzz283, cc), cc, cd, ce)
new_intersectFM_C2IntersectFM_C10(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, zzz365, zzz366, False, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Gts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz361, h, ba)
new_intersectFM_C2IntersectFM_C16(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, EmptyFM, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Lts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz248, be, bf)
new_intersectFM_C2IntersectFM_C110(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, EmptyFM, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Lts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz281, cc, cd)
new_intersectFM_C2IntersectFM_C11(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, EmptyFM, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Lts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz360, h, ba)
new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, EmptyFM, zzz254, True, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Lts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz248, be, bf)
new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, zzz253, zzz254, False, be, bf, bg) → new_intersectFM_C2IntersectFM_C15(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, zzz253, zzz254, new_gt1(zzz250, be), be, bf, bg)
new_intersectFM_C2IntersectFM_C10(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, zzz365, zzz366, False, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Lts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz360, h, ba)
new_intersectFM_C2IntersectFM_C18(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, EmptyFM, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Gts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz264, bh, ca)
new_intersectFM_C(Branch(Nothing, zzz31, zzz32, zzz33, zzz34), Branch(Nothing, zzz41, zzz42, zzz43, zzz44), bc, bd) → new_intersectFM_C2IntersectFM_C1(zzz31, zzz32, zzz33, zzz34, zzz41, zzz42, zzz43, zzz44, Nothing, zzz31, zzz32, zzz33, zzz34, new_esEs8(new_compare27(Nothing, Nothing, True, bc), LT), bc, bd, bd)
new_intersectFM_C2IntersectFM_C17(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, zzz268, zzz269, True, bh, ca, cb) → new_intersectFM_C2IntersectFM_C18(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz269, bh, ca, cb)
new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, Branch(zzz3650, zzz3651, zzz3652, zzz3653, zzz3654), zzz366, True, h, ba, bb) → new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz3650, zzz3651, zzz3652, zzz3653, zzz3654, new_lt15(Nothing, zzz3650, h), h, ba, bb)
new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, EmptyFM, zzz269, True, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Gts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz264, bh, ca)
new_intersectFM_C2IntersectFM_C16(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, Branch(zzz2530, zzz2531, zzz2532, zzz2533, zzz2534), be, bf, bg) → new_intersectFM_C2IntersectFM_C12(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz2530, zzz2531, zzz2532, zzz2533, zzz2534, new_lt15(Nothing, zzz2530, be), be, bf, bg)
new_intersectFM_C2IntersectFM_C17(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz265, zzz266, zzz267, zzz268, zzz269, False, bh, ca, cb) → new_intersectFM_C(new_intersectFM_C2Lts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca), zzz263, bh, ca)
new_intersectFM_C2IntersectFM_C19(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, zzz286, zzz287, False, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Gts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz282, cc, cd)
new_intersectFM_C2IntersectFM_C15(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, zzz253, zzz254, False, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Lts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz248, be, bf)
new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, EmptyFM, zzz287, True, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Gts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz282, cc, cd)
new_intersectFM_C(Branch(Nothing, zzz31, zzz32, zzz33, zzz34), Branch(Just(zzz400), zzz41, zzz42, zzz43, zzz44), bc, bd) → new_intersectFM_C2IntersectFM_C13(zzz31, zzz32, zzz33, zzz34, zzz400, zzz41, zzz42, zzz43, zzz44, Nothing, zzz31, zzz32, zzz33, zzz34, new_esEs8(new_compare27(Just(zzz400), Nothing, False, bc), LT), bc, bd, bd)
new_intersectFM_C2IntersectFM_C19(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, zzz286, zzz287, True, cc, cd, ce) → new_intersectFM_C2IntersectFM_C110(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz287, cc, cd, ce)
new_intersectFM_C2IntersectFM_C15(zzz241, zzz242, zzz243, zzz244, zzz245, zzz246, zzz247, zzz248, zzz249, zzz250, zzz251, zzz252, zzz253, zzz254, False, be, bf, bg) → new_intersectFM_C(new_intersectFM_C2Gts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf), zzz249, be, bf)
new_intersectFM_C(Branch(Just(zzz300), zzz31, zzz32, zzz33, zzz34), Branch(Nothing, zzz41, zzz42, zzz43, zzz44), bc, bd) → new_intersectFM_C2IntersectFM_C12(zzz300, zzz31, zzz32, zzz33, zzz34, zzz41, zzz42, zzz43, zzz44, Just(zzz300), zzz31, zzz32, zzz33, zzz34, new_esEs8(new_compare27(Nothing, Just(zzz300), False, bc), LT), bc, bd, bd)
new_intersectFM_C2IntersectFM_C18(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, Branch(zzz2680, zzz2681, zzz2682, zzz2683, zzz2684), bh, ca, cb) → new_intersectFM_C2IntersectFM_C13(zzz256, zzz257, zzz258, zzz259, zzz260, zzz261, zzz262, zzz263, zzz264, zzz2680, zzz2681, zzz2682, zzz2683, zzz2684, new_lt15(Just(zzz260), zzz2680, bh), bh, ca, cb)
new_intersectFM_C2IntersectFM_C19(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz283, zzz284, zzz285, zzz286, zzz287, False, cc, cd, ce) → new_intersectFM_C(new_intersectFM_C2Lts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd), zzz281, cc, cd)
new_intersectFM_C2IntersectFM_C1(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, EmptyFM, zzz366, True, h, ba, bb) → new_intersectFM_C(new_intersectFM_C2Gts(zzz354, zzz355, zzz356, zzz357, h, ba), zzz361, h, ba)
new_intersectFM_C2IntersectFM_C10(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz362, zzz363, zzz364, zzz365, zzz366, True, h, ba, bb) → new_intersectFM_C2IntersectFM_C11(zzz354, zzz355, zzz356, zzz357, zzz358, zzz359, zzz360, zzz361, zzz366, h, ba, bb)
new_intersectFM_C2IntersectFM_C110(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, Branch(zzz2860, zzz2861, zzz2862, zzz2863, zzz2864), cc, cd, ce) → new_intersectFM_C2IntersectFM_C14(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, zzz279, zzz280, zzz281, zzz282, zzz2860, zzz2861, zzz2862, zzz2863, zzz2864, new_lt15(Just(zzz278), zzz2860, cc), cc, cd, ce)
new_splitLT3(EmptyFM, bc, bd) → new_emptyFM(bc, bd)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Maybe, ddd)) → new_esEs4(zzz4000, zzz3000, ddd)
new_esEs23(zzz400001, zzz3300001, app(app(ty_Either, dbe), dbf)) → new_esEs7(zzz400001, zzz3300001, dbe, dbf)
new_ltEs19(zzz40000, zzz330000, ty_Integer) → new_ltEs16(zzz40000, zzz330000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_Either, cef), ceg), cch) → new_esEs7(zzz4000, zzz3000, cef, ceg)
new_esEs21(zzz4002, zzz3002, app(app(ty_@2, bbc), bbd)) → new_esEs6(zzz4002, zzz3002, bbc, bbd)
new_ltEs19(zzz40000, zzz330000, app(ty_Ratio, bed)) → new_ltEs11(zzz40000, zzz330000, bed)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(ty_Maybe, cbg)) → new_ltEs8(zzz400000, zzz3300000, cbg)
new_lt14(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Int) → new_ltEs12(zzz400002, zzz3300002)
new_esEs24(zzz4000, zzz3000, app(app(app(ty_@3, bcc), bcd), bce)) → new_esEs5(zzz4000, zzz3000, bcc, bcd, bce)
new_esEs17(Char(zzz4000), Char(zzz3000)) → new_primEqNat0(zzz4000, zzz3000)
new_esEs20(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Maybe, cfa), cch) → new_esEs4(zzz4000, zzz3000, cfa)
new_esEs31(zzz400, zzz300, ty_Ordering) → new_esEs8(zzz400, zzz300)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_ltEs20(zzz400001, zzz3300001, app(ty_[], bgg)) → new_ltEs10(zzz400001, zzz3300001, bgg)
new_compare([], :(zzz3300000, zzz3300001), bec) → LT
new_compare10(zzz400000, zzz3300000, True, dc, dd) → LT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(app(ty_@3, che), chf), chg)) → new_ltEs13(zzz400000, zzz3300000, che, chf, chg)
new_lt13(zzz400001, zzz3300001, app(app(app(ty_@3, dah), dba), dbb)) → new_lt8(zzz400001, zzz3300001, dah, dba, dbb)
new_esEs19(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_esEs24(zzz4000, zzz3000, app(ty_Maybe, bcb)) → new_esEs4(zzz4000, zzz3000, bcb)
new_esEs4(Nothing, Just(zzz3000), cdb) → False
new_esEs4(Just(zzz4000), Nothing, cdb) → False
new_lt20(zzz400000, zzz3300000, app(app(app(ty_@3, bfh), bga), bgb)) → new_lt8(zzz400000, zzz3300000, bfh, bga, bgb)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_@0) → new_esEs14(zzz4000, zzz3000)
new_addToFM_C20(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, bc, bd) → new_addToFM_C10(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_gt(zzz330, zzz3440, bc), bc, bd)
new_mkBalBranch6MkBalBranch3(zzz730, zzz731, zzz734, Branch(zzz1520, zzz1521, zzz1522, zzz1523, zzz1524), True, bc, bd) → new_mkBalBranch6MkBalBranch11(zzz730, zzz731, zzz734, zzz1520, zzz1521, zzz1522, zzz1523, zzz1524, new_lt9(new_sizeFM0(zzz1524, bc, bd), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM0(zzz1523, bc, bd))), bc, bd)
new_esEs25(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_esEs31(zzz400, zzz300, app(app(app(ty_@3, fc), fd), ff)) → new_esEs5(zzz400, zzz300, fc, fd, ff)
new_sizeFM0(Branch(zzz7340, zzz7341, zzz7342, zzz7343, zzz7344), bc, bd) → zzz7342
new_ltEs20(zzz400001, zzz3300001, ty_Double) → new_ltEs7(zzz400001, zzz3300001)
new_primMulNat0(Zero, Zero) → Zero
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(app(ty_@3, cfb), cfc), cfd), cch) → new_esEs5(zzz4000, zzz3000, cfb, cfc, cfd)
new_primPlusInt0(zzz15220, Pos(zzz4100)) → Pos(new_primPlusNat1(zzz15220, zzz4100))
new_esEs26(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare(:(zzz400000, zzz400001), [], bec) → GT
new_compare11(zzz400000, zzz3300000, ty_Int) → new_compare7(zzz400000, zzz3300000)
new_lt14(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare29(zzz400000, zzz3300000, True) → EQ
new_esEs23(zzz400001, zzz3300001, app(ty_Ratio, daf)) → new_esEs13(zzz400001, zzz3300001, daf)
new_esEs12(True, True) → True
new_ltEs18(zzz400002, zzz3300002, ty_Integer) → new_ltEs16(zzz400002, zzz3300002)
new_esEs20(zzz4001, zzz3001, app(ty_Maybe, hd)) → new_esEs4(zzz4001, zzz3001, hd)
new_ltEs18(zzz400002, zzz3300002, ty_@0) → new_ltEs5(zzz400002, zzz3300002)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Double, bfd) → new_ltEs7(zzz400000, zzz3300000)
new_esEs21(zzz4002, zzz3002, app(ty_[], bbb)) → new_esEs10(zzz4002, zzz3002, bbb)
new_esEs22(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_ltEs20(zzz400001, zzz3300001, app(ty_Maybe, bha)) → new_ltEs8(zzz400001, zzz3300001, bha)
new_intersectFM_C2Gts(zzz354, zzz355, zzz356, zzz357, h, ba) → new_splitGT3(Branch(Nothing, zzz354, zzz355, zzz356, zzz357), h, ba)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Bool) → new_esEs12(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Char) → new_ltEs17(zzz400002, zzz3300002)
new_compare11(zzz400000, zzz3300000, app(ty_Maybe, cde)) → new_compare13(zzz400000, zzz3300000, cde)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs14(False, True) → True
new_esEs24(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_splitLT4(EmptyFM, zzz260, bh, ca) → new_emptyFM(bh, ca)
new_esEs25(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, app(ty_Maybe, dag)) → new_esEs4(zzz400001, zzz3300001, dag)
new_lt14(zzz400000, zzz3300000, app(app(ty_Either, caa), cab)) → new_lt18(zzz400000, zzz3300000, caa, cab)
new_compare26(zzz400000, zzz3300000, False, caa, cab) → new_compare114(zzz400000, zzz3300000, new_ltEs15(zzz400000, zzz3300000, caa, cab), caa, cab)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Char, bfd) → new_ltEs17(zzz400000, zzz3300000)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(ty_[], cgg)) → new_esEs10(zzz4000, zzz3000, cgg)
new_primPlusInt2(EmptyFM, zzz730, zzz731, zzz734, bc, bd) → new_primPlusInt0(Zero, new_mkBalBranch6Size_r(zzz730, zzz731, zzz734, EmptyFM, bc, bd))
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(app(app(ty_@3, cgd), cge), cgf)) → new_esEs5(zzz4000, zzz3000, cgd, cge, cgf)
new_esEs26(zzz400000, zzz3300000, app(ty_[], bfe)) → new_esEs10(zzz400000, zzz3300000, bfe)
new_esEs20(zzz4001, zzz3001, app(ty_Ratio, hc)) → new_esEs13(zzz4001, zzz3001, hc)
new_esEs29(zzz400, Just(zzz3300), app(ty_Ratio, cda)) → new_esEs13(zzz400, zzz3300, cda)
new_esEs31(zzz400, zzz300, ty_Char) → new_esEs17(zzz400, zzz300)
new_mkVBalBranch0(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), bc, bd) → new_mkVBalBranch3MkVBalBranch20(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd)), new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd)), bc, bd)
new_compare11(zzz400000, zzz3300000, ty_Integer) → new_compare18(zzz400000, zzz3300000)
new_compare15(zzz400000, zzz3300000) → new_compare29(zzz400000, zzz3300000, new_esEs12(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_ltEs9(zzz40000, zzz330000) → new_fsEs(new_compare12(zzz40000, zzz330000))
new_lt13(zzz400001, zzz3300001, app(app(ty_Either, dbe), dbf)) → new_lt18(zzz400001, zzz3300001, dbe, dbf)
new_ltEs20(zzz400001, zzz3300001, ty_Integer) → new_ltEs16(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, app(ty_Maybe, bfg)) → new_lt15(zzz400000, zzz3300000, bfg)
new_lt14(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_intersectFM_C2Lts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca) → new_splitLT21(Nothing, zzz256, zzz257, zzz258, zzz259, zzz260, new_lt15(Just(zzz260), Nothing, bh), bh, ca)
new_esEs19(zzz4000, zzz3000, app(app(app(ty_@3, gc), gd), ge)) → new_esEs5(zzz4000, zzz3000, gc, gd, ge)
new_esEs19(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, app(ty_Maybe, bfg)) → new_esEs4(zzz400000, zzz3300000, bfg)
new_esEs20(zzz4001, zzz3001, app(app(ty_@2, baa), bab)) → new_esEs6(zzz4001, zzz3001, baa, bab)
new_primPlusInt(Pos(zzz5230), zzz458, zzz455, zzz457, da, db) → new_primPlusInt0(zzz5230, new_sizeFM1(zzz458, da, db))
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(app(ty_@2, ccc), ccd)) → new_ltEs4(zzz400000, zzz3300000, ccc, ccd)
new_lt13(zzz400001, zzz3300001, ty_Char) → new_lt12(zzz400001, zzz3300001)
new_esEs20(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_esEs31(zzz400, zzz300, ty_Int) → new_esEs18(zzz400, zzz300)
new_esEs22(zzz400000, zzz3300000, app(app(ty_Either, caa), cab)) → new_esEs7(zzz400000, zzz3300000, caa, cab)
new_splitLT22(zzz330, zzz331, zzz332, zzz333, zzz334, True, bc, bd) → new_splitLT3(zzz333, bc, bd)
new_lt13(zzz400001, zzz3300001, app(ty_[], dae)) → new_lt4(zzz400001, zzz3300001, dae)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Ordering, bfd) → new_ltEs6(zzz400000, zzz3300000)
new_splitGT22(zzz340, zzz341, zzz342, zzz343, zzz344, False, bc, bd) → new_splitGT12(zzz340, zzz341, zzz342, zzz343, zzz344, new_lt15(Nothing, zzz340, bc), bc, bd)
new_lt7(zzz400000, zzz3300000) → new_esEs8(new_compare18(zzz400000, zzz3300000), LT)
new_esEs25(zzz4001, zzz3001, app(ty_[], bdh)) → new_esEs10(zzz4001, zzz3001, bdh)
new_esEs28(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_pePe(False, zzz214) → zzz214
new_esEs19(zzz4000, zzz3000, app(ty_[], gf)) → new_esEs10(zzz4000, zzz3000, gf)
new_compare27(Just(zzz40000), Just(zzz330000), False, gb) → new_compare110(zzz40000, zzz330000, new_ltEs19(zzz40000, zzz330000, gb), gb)
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_[], cfe), cch) → new_esEs10(zzz4000, zzz3000, cfe)
new_esEs7(Left(zzz4000), Right(zzz3000), ccg, cch) → False
new_esEs7(Right(zzz4000), Left(zzz3000), ccg, cch) → False
new_esEs27(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, app(ty_[], cdc)) → new_compare(zzz400000, zzz3300000, cdc)
new_lt20(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_lt15(zzz4000, zzz33000, gb) → new_esEs8(new_compare13(zzz4000, zzz33000, gb), LT)
new_lt9(zzz4000, zzz33000) → new_esEs8(new_compare7(zzz4000, zzz33000), LT)
new_esEs20(zzz4001, zzz3001, ty_Double) → new_esEs16(zzz4001, zzz3001)
new_ltEs19(zzz40000, zzz330000, app(app(ty_@2, bfa), bfb)) → new_ltEs4(zzz40000, zzz330000, bfa, bfb)
new_lt4(zzz400000, zzz3300000, cf) → new_esEs8(new_compare(zzz400000, zzz3300000, cf), LT)
new_esEs11(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_lt6(zzz400000, zzz3300000) → new_esEs8(new_compare8(zzz400000, zzz3300000), LT)
new_ltEs10(zzz40000, zzz330000, bec) → new_fsEs(new_compare(zzz40000, zzz330000, bec))
new_lt20(zzz400000, zzz3300000, app(app(ty_@2, bgc), bgd)) → new_lt17(zzz400000, zzz3300000, bgc, bgd)
new_esEs26(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs6(GT, EQ) → False
new_esEs22(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(app(ty_Either, fg), fh)) → new_esEs7(zzz4000, zzz3000, fg, fh)
new_esEs21(zzz4002, zzz3002, ty_Int) → new_esEs18(zzz4002, zzz3002)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Succ(zzz330000))) → new_primCmpNat0(zzz330000, zzz40000)
new_compare111(zzz400000, zzz3300000, False) → GT
new_esEs18(zzz400, zzz300) → new_primEqInt(zzz400, zzz300)
new_compare111(zzz400000, zzz3300000, True) → LT
new_intersectFM_C2Gts1(zzz256, zzz257, zzz258, zzz259, zzz260, bh, ca) → new_splitGT21(Nothing, zzz256, zzz257, zzz258, zzz259, zzz260, new_gt0(zzz260, Nothing, bh), bh, ca)
new_primPlusInt1(zzz15220, Pos(zzz4110)) → new_primMinusNat0(zzz4110, zzz15220)
new_addToFM_C20(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, bc, bd) → new_mkBalBranch(zzz3440, zzz3441, new_addToFM_C0(zzz3443, zzz330, zzz331, bc, bd), zzz3444, bc, bd)
new_primPlusInt2(Branch(zzz1520, zzz1521, Neg(zzz15220), zzz1523, zzz1524), zzz730, zzz731, zzz734, bc, bd) → new_primPlusInt1(zzz15220, new_sizeFM0(zzz734, bc, bd))
new_ltEs20(zzz400001, zzz3300001, app(app(ty_@2, bhe), bhf)) → new_ltEs4(zzz400001, zzz3300001, bhe, bhf)
new_primCmpNat0(Zero, Succ(zzz33000000)) → LT
new_esEs29(zzz400, Just(zzz3300), ty_Char) → new_esEs17(zzz400, zzz3300)
new_ltEs11(zzz40000, zzz330000, bed) → new_fsEs(new_compare5(zzz40000, zzz330000, bed))
new_esEs22(zzz400000, zzz3300000, ty_Float) → new_esEs15(zzz400000, zzz3300000)
new_addToFM(zzz344, zzz330, zzz331, bc, bd) → new_addToFM_C0(zzz344, zzz330, zzz331, bc, bd)
new_ltEs8(Nothing, Just(zzz3300000), bee) → True
new_mkBranch(zzz454, zzz455, zzz456, zzz457, zzz458, da, db) → Branch(zzz455, zzz456, new_primPlusInt(new_primPlusInt0(Succ(Zero), new_sizeFM1(zzz457, da, db)), zzz458, zzz455, zzz457, da, db), zzz457, zzz458)
new_ltEs20(zzz400001, zzz3300001, ty_Bool) → new_ltEs14(zzz400001, zzz3300001)
new_lt20(zzz400000, zzz3300000, ty_Ordering) → new_lt6(zzz400000, zzz3300000)
new_compare27(Nothing, Just(zzz330000), False, gb) → LT
new_esEs25(zzz4001, zzz3001, app(app(ty_@2, bea), beb)) → new_esEs6(zzz4001, zzz3001, bea, beb)
new_esEs8(LT, LT) → True
new_ltEs4(@2(zzz400000, zzz400001), @2(zzz3300000, zzz3300001), bfa, bfb) → new_pePe(new_lt20(zzz400000, zzz3300000, bfa), new_asAs(new_esEs26(zzz400000, zzz3300000, bfa), new_ltEs20(zzz400001, zzz3300001, bfb)))
new_compare25(zzz400000, zzz3300000, True, de, df, dg) → EQ
new_esEs19(zzz4000, zzz3000, app(ty_Maybe, gb)) → new_esEs4(zzz4000, zzz3000, gb)
new_esEs21(zzz4002, zzz3002, app(ty_Ratio, bae)) → new_esEs13(zzz4002, zzz3002, bae)
new_splitGT3(Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), bc, bd) → new_splitGT22(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, new_gt1(zzz3440, bc), bc, bd)
new_lt13(zzz400001, zzz3300001, ty_Int) → new_lt9(zzz400001, zzz3300001)
new_esEs19(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_compare17(zzz400000, zzz3300000, caa, cab) → new_compare26(zzz400000, zzz3300000, new_esEs7(zzz400000, zzz3300000, caa, cab), caa, cab)
new_esEs25(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, app(app(ty_Either, bbg), bbh)) → new_esEs7(zzz4000, zzz3000, bbg, bbh)
new_esEs25(zzz4001, zzz3001, app(ty_Ratio, bdc)) → new_esEs13(zzz4001, zzz3001, bdc)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_mkVBalBranch3MkVBalBranch20(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, bc, bd) → new_mkBalBranch(zzz3440, zzz3441, new_mkVBalBranch0(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz3443, bc, bd), zzz3444, bc, bd)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs24(zzz4000, zzz3000, app(app(ty_@2, bcg), bch)) → new_esEs6(zzz4000, zzz3000, bcg, bch)
new_mkVBalBranch0(zzz330, zzz331, EmptyFM, zzz344, bc, bd) → new_addToFM(zzz344, zzz330, zzz331, bc, bd)
new_esEs22(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_pePe(True, zzz214) → True
new_primEqNat0(Zero, Zero) → True
new_splitGT22(zzz340, zzz341, zzz342, zzz343, zzz344, True, bc, bd) → new_splitGT3(zzz344, bc, bd)
new_esEs26(zzz400000, zzz3300000, ty_Char) → new_esEs17(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, app(ty_Ratio, ga)) → new_esEs13(zzz4000, zzz3000, ga)
new_mkBalBranch6MkBalBranch11(zzz730, zzz731, zzz734, zzz1520, zzz1521, zzz1522, zzz1523, Branch(zzz15240, zzz15241, zzz15242, zzz15243, zzz15244), False, bc, bd) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))), zzz15240, zzz15241, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))), zzz1520, zzz1521, zzz1523, zzz15243, app(ty_Maybe, bc), bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))))), zzz730, zzz731, zzz15244, zzz734, app(ty_Maybe, bc), bd), app(ty_Maybe, bc), bd)
new_esEs14(@0, @0) → True
new_esEs23(zzz400001, zzz3300001, ty_Integer) → new_esEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(ty_Ratio, bff)) → new_esEs13(zzz400000, zzz3300000, bff)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs19(zzz40000, zzz330000, ty_@0) → new_ltEs5(zzz40000, zzz330000)
new_primPlusInt1(zzz15220, Neg(zzz4110)) → Neg(new_primPlusNat1(zzz15220, zzz4110))
new_lt20(zzz400000, zzz3300000, ty_Integer) → new_lt7(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_[], cac), bfd) → new_ltEs10(zzz400000, zzz3300000, cac)
new_esEs31(zzz400, zzz300, app(ty_[], dh)) → new_esEs10(zzz400, zzz300, dh)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Ordering, cch) → new_esEs8(zzz4000, zzz3000)
new_lt13(zzz400001, zzz3300001, ty_Float) → new_lt10(zzz400001, zzz3300001)
new_compare(:(zzz400000, zzz400001), :(zzz3300000, zzz3300001), bec) → new_primCompAux1(zzz400000, zzz3300000, new_compare(zzz400001, zzz3300001, bec), bec)
new_ltEs19(zzz40000, zzz330000, ty_Ordering) → new_ltEs6(zzz40000, zzz330000)
new_sr(zzz4001, zzz3001) → new_primMulInt(zzz4001, zzz3001)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_[], ddh)) → new_esEs10(zzz4000, zzz3000, ddh)
new_compare7(zzz400, zzz3300) → new_primCmpInt(zzz400, zzz3300)
new_esEs29(zzz400, Just(zzz3300), app(ty_Maybe, cdb)) → new_esEs4(zzz400, zzz3300, cdb)
new_esEs24(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_compare12(Float(zzz400000, zzz400001), Float(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_Either, dab), dac)) → new_ltEs15(zzz400000, zzz3300000, dab, dac)
new_esEs26(zzz400000, zzz3300000, ty_Ordering) → new_esEs8(zzz400000, zzz3300000)
new_ltEs6(EQ, GT) → True
new_esEs8(GT, GT) → True
new_ltEs20(zzz400001, zzz3300001, app(ty_Ratio, bgh)) → new_ltEs11(zzz400001, zzz3300001, bgh)
new_esEs20(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_Double) → new_esEs16(zzz4002, zzz3002)
new_primPlusNat0(Succ(zzz2220), zzz300100) → Succ(Succ(new_primPlusNat1(zzz2220, zzz300100)))
new_ltEs18(zzz400002, zzz3300002, ty_Ordering) → new_ltEs6(zzz400002, zzz3300002)
new_esEs31(zzz400, zzz300, app(app(ty_Either, ccg), cch)) → new_esEs7(zzz400, zzz300, ccg, cch)
new_esEs11(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(app(ty_Either, cfh), cga)) → new_esEs7(zzz4000, zzz3000, cfh, cga)
new_esEs12(False, False) → True
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_[], chb)) → new_ltEs10(zzz400000, zzz3300000, chb)
new_esEs8(GT, LT) → False
new_esEs8(LT, GT) → False
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_@0, bfd) → new_ltEs5(zzz400000, zzz3300000)
new_ltEs18(zzz400002, zzz3300002, ty_Double) → new_ltEs7(zzz400002, zzz3300002)
new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd) → new_sizeFM(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, app(ty_[], cf)) → new_lt4(zzz400000, zzz3300000, cf)
new_esEs20(zzz4001, zzz3001, ty_Ordering) → new_esEs8(zzz4001, zzz3001)
new_esEs23(zzz400001, zzz3300001, ty_Ordering) → new_esEs8(zzz400001, zzz3300001)
new_sizeFM1(Branch(zzz4570, zzz4571, zzz4572, zzz4573, zzz4574), da, db) → zzz4572
new_primPlusNat1(Succ(zzz22200), Zero) → Succ(zzz22200)
new_primPlusNat1(Zero, Succ(zzz3001000)) → Succ(zzz3001000)
new_compare27(Just(zzz40000), Nothing, False, gb) → GT
new_primCompAux1(zzz400000, zzz3300000, zzz215, bec) → new_primCompAux0(zzz215, new_compare11(zzz400000, zzz3300000, bec))
new_lt14(zzz400000, zzz3300000, app(ty_Ratio, cg)) → new_lt5(zzz400000, zzz3300000, cg)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(app(app(ty_@3, cbh), cca), ccb)) → new_ltEs13(zzz400000, zzz3300000, cbh, cca, ccb)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(ty_Ratio, cgb)) → new_esEs13(zzz4000, zzz3000, cgb)
new_compare27(Nothing, Nothing, False, gb) → LT
new_ltEs19(zzz40000, zzz330000, ty_Float) → new_ltEs9(zzz40000, zzz330000)
new_esEs25(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs7(Left(zzz4000), Left(zzz3000), app(ty_Ratio, ceh), cch) → new_esEs13(zzz4000, zzz3000, ceh)
new_splitLT11(zzz330, zzz331, zzz332, zzz333, zzz334, True, bc, bd) → new_mkVBalBranch0(zzz330, zzz331, zzz333, new_splitLT3(zzz334, bc, bd), bc, bd)
new_esEs7(Left(zzz4000), Left(zzz3000), app(app(ty_@2, cff), cfg), cch) → new_esEs6(zzz4000, zzz3000, cff, cfg)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Double) → new_ltEs7(zzz400000, zzz3300000)
new_mkBalBranch6MkBalBranch5(zzz730, zzz731, zzz734, zzz152, True, bc, bd) → new_mkBranch(Zero, zzz730, zzz731, zzz152, zzz734, app(ty_Maybe, bc), bd)
new_ltEs6(EQ, EQ) → True
new_esEs11(zzz4000, zzz3000, app(app(app(ty_@3, ee), ef), eg)) → new_esEs5(zzz4000, zzz3000, ee, ef, eg)
new_esEs29(zzz400, Just(zzz3300), app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz400, zzz3300, bbe, bbf)
new_esEs11(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primEqInt(Neg(Succ(zzz40000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(zzz30000))) → False
new_primCompAux0(zzz220, GT) → GT
new_esEs8(EQ, EQ) → True
new_ltEs17(zzz40000, zzz330000) → new_fsEs(new_compare19(zzz40000, zzz330000))
new_primPlusInt0(zzz15220, Neg(zzz4100)) → new_primMinusNat0(zzz15220, zzz4100)
new_compare26(zzz400000, zzz3300000, True, caa, cab) → EQ
new_splitGT11(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, True, bh, ca) → new_mkVBalBranch0(zzz2590, zzz2591, new_splitGT4(zzz2593, zzz260, bh, ca), zzz2594, bh, ca)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Bool, bfd) → new_ltEs14(zzz400000, zzz3300000)
new_ltEs6(GT, GT) → True
new_esEs24(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare24(zzz400000, zzz3300000, True, dc, dd) → EQ
new_ltEs13(@3(zzz400000, zzz400001, zzz400002), @3(zzz3300000, zzz3300001, zzz3300002), bef, beg, beh) → new_pePe(new_lt14(zzz400000, zzz3300000, bef), new_asAs(new_esEs22(zzz400000, zzz3300000, bef), new_pePe(new_lt13(zzz400001, zzz3300001, beg), new_asAs(new_esEs23(zzz400001, zzz3300001, beg), new_ltEs18(zzz400002, zzz3300002, beh)))))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Maybe, cae), bfd) → new_ltEs8(zzz400000, zzz3300000, cae)
new_ltEs19(zzz40000, zzz330000, ty_Char) → new_ltEs17(zzz40000, zzz330000)
new_esEs22(zzz400000, zzz3300000, app(app(app(ty_@3, de), df), dg)) → new_esEs5(zzz400000, zzz3300000, de, df, dg)
new_compare([], [], bec) → EQ
new_compare11(zzz400000, zzz3300000, app(app(ty_@2, cea), ceb)) → new_compare16(zzz400000, zzz3300000, cea, ceb)
new_esEs26(zzz400000, zzz3300000, app(app(ty_Either, bge), bgf)) → new_esEs7(zzz400000, zzz3300000, bge, bgf)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs10(:(zzz4000, zzz4001), [], dh) → False
new_esEs10([], :(zzz3000, zzz3001), dh) → False
new_splitGT12(zzz340, zzz341, zzz342, zzz343, zzz344, False, bc, bd) → zzz344
new_ltEs19(zzz40000, zzz330000, ty_Double) → new_ltEs7(zzz40000, zzz330000)
new_primCmpNat0(Succ(zzz4000000), Succ(zzz33000000)) → new_primCmpNat0(zzz4000000, zzz33000000)
new_primMinusNat0(Succ(zzz152200), Zero) → Pos(Succ(zzz152200))
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_Either, dda), ddb)) → new_esEs7(zzz4000, zzz3000, dda, ddb)
new_esEs9(Integer(zzz4000), Integer(zzz3000)) → new_primEqInt(zzz4000, zzz3000)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(app(ty_@2, cgh), cha)) → new_esEs6(zzz4000, zzz3000, cgh, cha)
new_esEs22(zzz400000, zzz3300000, app(ty_Maybe, dad)) → new_esEs4(zzz400000, zzz3300000, dad)
new_esEs25(zzz4001, zzz3001, app(ty_Maybe, bdd)) → new_esEs4(zzz4001, zzz3001, bdd)
new_splitGT11(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, False, bh, ca) → zzz2594
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Int) → new_esEs18(zzz4000, zzz3000)
new_esEs29(zzz400, Just(zzz3300), app(ty_[], dh)) → new_esEs10(zzz400, zzz3300, dh)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Succ(zzz30000))) → new_primEqNat0(zzz40000, zzz30000)
new_compare10(zzz400000, zzz3300000, False, dc, dd) → GT
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Ratio, chc)) → new_ltEs11(zzz400000, zzz3300000, chc)
new_esEs6(@2(zzz4000, zzz4001), @2(zzz3000, zzz3001), bbe, bbf) → new_asAs(new_esEs24(zzz4000, zzz3000, bbe), new_esEs25(zzz4001, zzz3001, bbf))
new_compare11(zzz400000, zzz3300000, app(ty_Ratio, cdd)) → new_compare5(zzz400000, zzz3300000, cdd)
new_ltEs19(zzz40000, zzz330000, ty_Bool) → new_ltEs14(zzz40000, zzz330000)
new_splitLT3(Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), bc, bd) → new_splitLT22(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, new_lt15(Nothing, zzz3330, bc), bc, bd)
new_esEs23(zzz400001, zzz3300001, ty_Char) → new_esEs17(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_Either, dcg), dch)) → new_ltEs15(zzz400002, zzz3300002, dcg, dch)
new_mkBalBranch6MkBalBranch11(zzz730, zzz731, zzz734, zzz1520, zzz1521, zzz1522, zzz1523, zzz1524, True, bc, bd) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))), zzz1520, zzz1521, zzz1523, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))), zzz730, zzz731, zzz1524, zzz734, app(ty_Maybe, bc), bd), app(ty_Maybe, bc), bd)
new_esEs10([], [], dh) → True
new_splitLT12(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, True, bh, ca) → new_mkVBalBranch0(zzz2580, zzz2581, zzz2583, new_splitLT4(zzz2584, zzz260, bh, ca), bh, ca)
new_esEs24(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Int, bfd) → new_ltEs12(zzz400000, zzz3300000)
new_splitLT22(zzz330, zzz331, zzz332, zzz333, zzz334, False, bc, bd) → new_splitLT11(zzz330, zzz331, zzz332, zzz333, zzz334, new_gt1(zzz330, bc), bc, bd)
new_primEqNat0(Succ(zzz40000), Succ(zzz30000)) → new_primEqNat0(zzz40000, zzz30000)
new_ltEs14(False, False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Integer, cch) → new_esEs9(zzz4000, zzz3000)
new_esEs19(zzz4000, zzz3000, app(app(ty_@2, gg), gh)) → new_esEs6(zzz4000, zzz3000, gg, gh)
new_esEs29(zzz400, Nothing, bc) → False
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(app(ty_@3, dde), ddf), ddg)) → new_esEs5(zzz4000, zzz3000, dde, ddf, ddg)
new_compare6(Double(zzz400000, zzz400001), Double(zzz3300000, zzz3300001)) → new_compare7(new_sr(zzz400000, zzz3300000), new_sr(zzz400001, zzz3300001))
new_esEs22(zzz400000, zzz3300000, ty_Bool) → new_esEs12(zzz400000, zzz3300000)
new_splitGT4(EmptyFM, zzz260, bh, ca) → new_emptyFM(bh, ca)
new_lt11(zzz400000, zzz3300000) → new_esEs8(new_compare15(zzz400000, zzz3300000), LT)
new_compare114(zzz400000, zzz3300000, True, caa, cab) → LT
new_esEs20(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_esEs24(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Nothing, bee) → False
new_compare31(zzz330, bc) → new_compare27(Nothing, zzz330, new_esEs30(zzz330, bc), bc)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Integer) → new_compare18(new_sr0(zzz400000, zzz3300001), new_sr0(zzz3300000, zzz400001))
new_esEs11(zzz4000, zzz3000, app(ty_Maybe, ed)) → new_esEs4(zzz4000, zzz3000, ed)
new_compare24(zzz400000, zzz3300000, False, dc, dd) → new_compare10(zzz400000, zzz3300000, new_ltEs4(zzz400000, zzz3300000, dc, dd), dc, dd)
new_sizeFM(zzz730, zzz731, zzz732, zzz733, zzz734, bc, bd) → zzz732
new_compare19(Char(zzz400000), Char(zzz3300000)) → new_primCmpNat0(zzz400000, zzz3300000)
new_esEs8(EQ, LT) → False
new_esEs8(LT, EQ) → False
new_lt20(zzz400000, zzz3300000, app(ty_Ratio, bff)) → new_lt5(zzz400000, zzz3300000, bff)
new_primEqInt(Pos(Succ(zzz40000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(zzz30000))) → False
new_mkBalBranch6MkBalBranch01(zzz730, zzz731, zzz7340, zzz7341, zzz7342, Branch(zzz73430, zzz73431, zzz73432, zzz73433, zzz73434), zzz7344, zzz152, False, bc, bd) → new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), zzz73430, zzz73431, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), zzz730, zzz731, zzz152, zzz73433, app(ty_Maybe, bc), bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), zzz7340, zzz7341, zzz73434, zzz7344, app(ty_Maybe, bc), bd), app(ty_Maybe, bc), bd)
new_esEs24(zzz4000, zzz3000, ty_Float) → new_esEs15(zzz4000, zzz3000)
new_primCmpNat0(Zero, Zero) → EQ
new_lt14(zzz400000, zzz3300000, app(app(app(ty_@3, de), df), dg)) → new_lt8(zzz400000, zzz3300000, de, df, dg)
new_primCmpNat0(Succ(zzz4000000), Zero) → GT
new_esEs19(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_compare11(zzz400000, zzz3300000, ty_Char) → new_compare19(zzz400000, zzz3300000)
new_esEs29(zzz400, Just(zzz3300), ty_Double) → new_esEs16(zzz400, zzz3300)
new_lt12(zzz400000, zzz3300000) → new_esEs8(new_compare19(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Pos(Succ(zzz330000))) → LT
new_esEs29(zzz400, Just(zzz3300), ty_Bool) → new_esEs12(zzz400, zzz3300)
new_compare9(@0, @0) → EQ
new_esEs21(zzz4002, zzz3002, ty_Float) → new_esEs15(zzz4002, zzz3002)
new_esEs22(zzz400000, zzz3300000, app(ty_Ratio, cg)) → new_esEs13(zzz400000, zzz3300000, cg)
new_esEs27(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_sr0(Integer(zzz33000000), Integer(zzz4000010)) → Integer(new_primMulInt(zzz33000000, zzz4000010))
new_primPlusNat1(Succ(zzz22200), Succ(zzz3001000)) → Succ(Succ(new_primPlusNat1(zzz22200, zzz3001000)))
new_primEqInt(Pos(Succ(zzz40000)), Neg(zzz3000)) → False
new_primEqInt(Neg(Succ(zzz40000)), Pos(zzz3000)) → False
new_esEs24(zzz4000, zzz3000, app(ty_Ratio, bca)) → new_esEs13(zzz4000, zzz3000, bca)
new_esEs4(Just(zzz4000), Just(zzz3000), app(app(ty_@2, dea), deb)) → new_esEs6(zzz4000, zzz3000, dea, deb)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Float, cch) → new_esEs15(zzz4000, zzz3000)
new_gt1(zzz330, bc) → new_esEs8(new_compare31(zzz330, bc), GT)
new_mkBalBranch6MkBalBranch3(zzz730, zzz731, zzz734, EmptyFM, True, bc, bd) → error([])
new_compare18(Integer(zzz400000), Integer(zzz3300000)) → new_primCmpInt(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_esEs22(zzz400000, zzz3300000, app(app(ty_@2, dc), dd)) → new_esEs6(zzz400000, zzz3300000, dc, dd)
new_primCmpInt(Neg(Succ(zzz40000)), Neg(Zero)) → LT
new_primEqInt(Pos(Zero), Neg(Succ(zzz30000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(zzz30000))) → False
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Float) → new_ltEs9(zzz400000, zzz3300000)
new_lt8(zzz400000, zzz3300000, de, df, dg) → new_esEs8(new_compare14(zzz400000, zzz3300000, de, df, dg), LT)
new_primCmpInt(Pos(Zero), Pos(Succ(zzz330000))) → new_primCmpNat0(Zero, Succ(zzz330000))
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, app(ty_Maybe, cgc)) → new_esEs4(zzz4000, zzz3000, cgc)
new_ltEs18(zzz400002, zzz3300002, app(ty_Ratio, dbh)) → new_ltEs11(zzz400002, zzz3300002, dbh)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Char) → new_ltEs17(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, ty_@0) → new_esEs14(zzz4001, zzz3001)
new_compare11(zzz400000, zzz3300000, app(app(app(ty_@3, cdf), cdg), cdh)) → new_compare14(zzz400000, zzz3300000, cdf, cdg, cdh)
new_esEs23(zzz400001, zzz3300001, ty_Int) → new_esEs18(zzz400001, zzz3300001)
new_ltEs5(zzz40000, zzz330000) → new_fsEs(new_compare9(zzz40000, zzz330000))
new_esEs8(GT, EQ) → False
new_esEs8(EQ, GT) → False
new_esEs25(zzz4001, zzz3001, ty_Float) → new_esEs15(zzz4001, zzz3001)
new_splitLT21(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, True, bh, ca) → new_splitLT4(zzz2583, zzz260, bh, ca)
new_compare13(zzz4000, zzz33000, gb) → new_compare27(zzz4000, zzz33000, new_esEs4(zzz4000, zzz33000, gb), gb)
new_esEs16(Double(zzz4000, zzz4001), Double(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_emptyFM(bc, bd) → EmptyFM
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Float) → new_esEs15(zzz4000, zzz3000)
new_ltEs19(zzz40000, zzz330000, app(app(app(ty_@3, bef), beg), beh)) → new_ltEs13(zzz40000, zzz330000, bef, beg, beh)
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_lt20(zzz400000, zzz3300000, ty_@0) → new_lt16(zzz400000, zzz3300000)
new_esEs10(:(zzz4000, zzz4001), :(zzz3000, zzz3001), dh) → new_asAs(new_esEs11(zzz4000, zzz3000, dh), new_esEs10(zzz4001, zzz3001, dh))
new_primCompAux0(zzz220, LT) → LT
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_@0) → new_ltEs5(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_Bool) → new_lt11(zzz400001, zzz3300001)
new_mkBalBranch6MkBalBranch4(zzz730, zzz731, zzz734, zzz152, False, bc, bd) → new_mkBalBranch6MkBalBranch3(zzz730, zzz731, zzz734, zzz152, new_gt2(new_mkBalBranch6Size_l(zzz730, zzz731, zzz734, zzz152, bc, bd), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_r(zzz730, zzz731, zzz734, zzz152, bc, bd))), bc, bd)
new_compare16(zzz400000, zzz3300000, dc, dd) → new_compare24(zzz400000, zzz3300000, new_esEs6(zzz400000, zzz3300000, dc, dd), dc, dd)
new_compare11(zzz400000, zzz3300000, ty_Double) → new_compare6(zzz400000, zzz3300000)
new_compare113(zzz400000, zzz3300000, True) → LT
new_compare114(zzz400000, zzz3300000, False, caa, cab) → GT
new_not(False) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Int, cch) → new_esEs18(zzz4000, zzz3000)
new_splitGT4(Branch(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944), zzz260, bh, ca) → new_splitGT21(zzz25940, zzz25941, zzz25942, zzz25943, zzz25944, zzz260, new_gt(Just(zzz260), zzz25940, bh), bh, ca)
new_compare110(zzz195, zzz196, True, cee) → LT
new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd) → new_sizeFM(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, bc, bd)
new_primPlusNat0(Zero, zzz300100) → Succ(zzz300100)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Double, cch) → new_esEs16(zzz4000, zzz3000)
new_lt16(zzz400000, zzz3300000) → new_esEs8(new_compare9(zzz400000, zzz3300000), LT)
new_intersectFM_C2Gts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd) → new_splitGT21(Just(zzz273), zzz274, zzz275, zzz276, zzz277, zzz278, new_gt0(zzz278, Just(zzz273), cc), cc, cd)
new_ltEs19(zzz40000, zzz330000, app(ty_[], bec)) → new_ltEs10(zzz40000, zzz330000, bec)
new_lt13(zzz400001, zzz3300001, ty_Integer) → new_lt7(zzz400001, zzz3300001)
new_esEs23(zzz400001, zzz3300001, app(app(ty_@2, dbc), dbd)) → new_esEs6(zzz400001, zzz3300001, dbc, dbd)
new_esEs19(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_compare113(zzz400000, zzz3300000, False) → GT
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_addToFM_C0(Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), zzz330, zzz331, bc, bd) → new_addToFM_C20(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt15(zzz330, zzz3440, bc), bc, bd)
new_splitGT3(EmptyFM, bc, bd) → new_emptyFM(bc, bd)
new_esEs26(zzz400000, zzz3300000, ty_Int) → new_esEs18(zzz400000, zzz3300000)
new_esEs31(zzz400, zzz300, ty_Integer) → new_esEs9(zzz400, zzz300)
new_esEs11(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_primPlusInt2(Branch(zzz1520, zzz1521, Pos(zzz15220), zzz1523, zzz1524), zzz730, zzz731, zzz734, bc, bd) → new_primPlusInt0(zzz15220, new_sizeFM0(zzz734, bc, bd))
new_esEs11(zzz4000, zzz3000, ty_@0) → new_esEs14(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, app(ty_[], dae)) → new_esEs10(zzz400001, zzz3300001, dae)
new_lt13(zzz400001, zzz3300001, app(ty_Ratio, daf)) → new_lt5(zzz400001, zzz3300001, daf)
new_mkBalBranch6MkBalBranch3(zzz730, zzz731, zzz734, zzz152, False, bc, bd) → new_mkBranch(Succ(Zero), zzz730, zzz731, zzz152, zzz734, app(ty_Maybe, bc), bd)
new_ltEs19(zzz40000, zzz330000, app(app(ty_Either, bfc), bfd)) → new_ltEs15(zzz40000, zzz330000, bfc, bfd)
new_esEs19(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_compare28(zzz400000, zzz3300000, True) → EQ
new_lt13(zzz400001, zzz3300001, app(app(ty_@2, dbc), dbd)) → new_lt17(zzz400001, zzz3300001, dbc, dbd)
new_esEs20(zzz4001, zzz3001, ty_Int) → new_esEs18(zzz4001, zzz3001)
new_esEs20(zzz4001, zzz3001, app(app(app(ty_@3, he), hf), hg)) → new_esEs5(zzz4001, zzz3001, he, hf, hg)
new_primCmpInt(Pos(Succ(zzz40000)), Neg(zzz33000)) → GT
new_esEs21(zzz4002, zzz3002, app(app(app(ty_@3, bag), bah), bba)) → new_esEs5(zzz4002, zzz3002, bag, bah, bba)
new_lt14(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_intersectFM_C2Gts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf) → new_splitGT22(Just(zzz241), zzz242, zzz243, zzz244, zzz245, new_gt1(Just(zzz241), be), be, bf)
new_esEs7(Right(zzz4000), Right(zzz3000), ccg, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_mkBalBranch(zzz730, zzz731, zzz152, zzz734, bc, bd) → new_mkBalBranch6MkBalBranch5(zzz730, zzz731, zzz734, zzz152, new_lt9(new_primPlusInt2(zzz152, zzz730, zzz731, zzz734, bc, bd), Pos(Succ(Succ(Zero)))), bc, bd)
new_primMulInt(Pos(zzz40010), Pos(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_esEs5(@3(zzz4000, zzz4001, zzz4002), @3(zzz3000, zzz3001, zzz3002), fc, fd, ff) → new_asAs(new_esEs19(zzz4000, zzz3000, fc), new_asAs(new_esEs20(zzz4001, zzz3001, fd), new_esEs21(zzz4002, zzz3002, ff)))
new_ltEs18(zzz400002, zzz3300002, ty_Float) → new_ltEs9(zzz400002, zzz3300002)
new_mkVBalBranch3MkVBalBranch20(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, bc, bd) → new_mkVBalBranch3MkVBalBranch10(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, new_lt9(new_sr(new_sIZE_RATIO, new_mkVBalBranch3Size_r(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd)), new_mkVBalBranch3Size_l(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, bc, bd)), bc, bd)
new_esEs7(Left(zzz4000), Left(zzz3000), ty_@0, cch) → new_esEs14(zzz4000, zzz3000)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(app(ty_@3, caf), cag), cah), bfd) → new_ltEs13(zzz400000, zzz3300000, caf, cag, cah)
new_primMulInt(Neg(zzz40010), Neg(zzz30010)) → Pos(new_primMulNat0(zzz40010, zzz30010))
new_ltEs19(zzz40000, zzz330000, app(ty_Maybe, bee)) → new_ltEs8(zzz40000, zzz330000, bee)
new_primEqNat0(Succ(zzz40000), Zero) → False
new_primEqNat0(Zero, Succ(zzz30000)) → False
new_ltEs19(zzz40000, zzz330000, ty_Int) → new_ltEs12(zzz40000, zzz330000)
new_lt20(zzz400000, zzz3300000, app(app(ty_Either, bge), bgf)) → new_lt18(zzz400000, zzz3300000, bge, bgf)
new_ltEs6(LT, LT) → True
new_mkVBalBranch0(zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), EmptyFM, bc, bd) → new_addToFM(Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), zzz330, zzz331, bc, bd)
new_ltEs6(EQ, LT) → False
new_esEs20(zzz4001, zzz3001, app(ty_[], hh)) → new_esEs10(zzz4001, zzz3001, hh)
new_ltEs14(True, True) → True
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs12(zzz40000, zzz330000) → new_fsEs(new_compare7(zzz40000, zzz330000))
new_esEs4(Nothing, Nothing, cdb) → True
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Char, cch) → new_esEs17(zzz4000, zzz3000)
new_esEs4(Just(zzz4000), Just(zzz3000), app(ty_Ratio, ddc)) → new_esEs13(zzz4000, zzz3000, ddc)
new_esEs11(zzz4000, zzz3000, ty_Int) → new_esEs18(zzz4000, zzz3000)
new_lt14(zzz400000, zzz3300000, ty_Bool) → new_lt11(zzz400000, zzz3300000)
new_mkVBalBranch3MkVBalBranch10(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, bc, bd) → new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), zzz330, zzz331, Branch(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334), Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), app(ty_Maybe, bc), bd)
new_mkBalBranch6MkBalBranch5(zzz730, zzz731, zzz734, zzz152, False, bc, bd) → new_mkBalBranch6MkBalBranch4(zzz730, zzz731, zzz734, zzz152, new_gt2(new_mkBalBranch6Size_r(zzz730, zzz731, zzz734, zzz152, bc, bd), new_sr(new_sIZE_RATIO, new_mkBalBranch6Size_l(zzz730, zzz731, zzz734, zzz152, bc, bd))), bc, bd)
new_sizeFM0(EmptyFM, bc, bd) → Pos(Zero)
new_lt18(zzz400000, zzz3300000, caa, cab) → new_esEs8(new_compare17(zzz400000, zzz3300000, caa, cab), LT)
new_esEs21(zzz4002, zzz3002, app(app(ty_Either, bac), bad)) → new_esEs7(zzz4002, zzz3002, bac, bad)
new_ltEs18(zzz400002, zzz3300002, app(app(app(ty_@3, dcb), dcc), dcd)) → new_ltEs13(zzz400002, zzz3300002, dcb, dcc, dcd)
new_lt13(zzz400001, zzz3300001, app(ty_Maybe, dag)) → new_lt15(zzz400001, zzz3300001, dag)
new_lt13(zzz400001, zzz3300001, ty_Double) → new_lt19(zzz400001, zzz3300001)
new_ltEs20(zzz400001, zzz3300001, ty_@0) → new_ltEs5(zzz400001, zzz3300001)
new_compare112(zzz400000, zzz3300000, True, de, df, dg) → LT
new_primMinusNat0(Zero, Zero) → Pos(Zero)
new_esEs21(zzz4002, zzz3002, ty_Char) → new_esEs17(zzz4002, zzz3002)
new_lt10(zzz400000, zzz3300000) → new_esEs8(new_compare12(zzz400000, zzz3300000), LT)
new_primCmpInt(Neg(Zero), Neg(Succ(zzz330000))) → new_primCmpNat0(Succ(zzz330000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(zzz330000))) → GT
new_compare110(zzz195, zzz196, False, cee) → GT
new_ltEs20(zzz400001, zzz3300001, ty_Int) → new_ltEs12(zzz400001, zzz3300001)
new_lt14(zzz400000, zzz3300000, app(app(ty_@2, dc), dd)) → new_lt17(zzz400000, zzz3300000, dc, dd)
new_sIZE_RATIO → Pos(Succ(Succ(Succ(Succ(Succ(Zero))))))
new_ltEs20(zzz400001, zzz3300001, app(app(app(ty_@3, bhb), bhc), bhd)) → new_ltEs13(zzz400001, zzz3300001, bhb, bhc, bhd)
new_splitGT12(zzz340, zzz341, zzz342, zzz343, zzz344, True, bc, bd) → new_mkVBalBranch0(zzz340, zzz341, new_splitGT3(zzz343, bc, bd), zzz344, bc, bd)
new_esEs26(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_mkBalBranch6MkBalBranch4(zzz730, zzz731, EmptyFM, zzz152, True, bc, bd) → error([])
new_esEs11(zzz4000, zzz3000, app(app(ty_Either, ea), eb)) → new_esEs7(zzz4000, zzz3000, ea, eb)
new_ltEs18(zzz400002, zzz3300002, app(ty_[], dbg)) → new_ltEs10(zzz400002, zzz3300002, dbg)
new_lt14(zzz400000, zzz3300000, app(ty_Maybe, dad)) → new_lt15(zzz400000, zzz3300000, dad)
new_esEs24(zzz4000, zzz3000, app(ty_[], bcf)) → new_esEs10(zzz4000, zzz3000, bcf)
new_esEs21(zzz4002, zzz3002, app(ty_Maybe, baf)) → new_esEs4(zzz4002, zzz3002, baf)
new_compare11(zzz400000, zzz3300000, ty_@0) → new_compare9(zzz400000, zzz3300000)
new_esEs20(zzz4001, zzz3001, app(app(ty_Either, ha), hb)) → new_esEs7(zzz4001, zzz3001, ha, hb)
new_ltEs20(zzz400001, zzz3300001, app(app(ty_Either, bhg), bhh)) → new_ltEs15(zzz400001, zzz3300001, bhg, bhh)
new_esEs11(zzz4000, zzz3000, app(app(ty_@2, fa), fb)) → new_esEs6(zzz4000, zzz3000, fa, fb)
new_esEs23(zzz400001, zzz3300001, ty_@0) → new_esEs14(zzz400001, zzz3300001)
new_esEs28(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs25(zzz4001, zzz3001, ty_Bool) → new_esEs12(zzz4001, zzz3001)
new_esEs21(zzz4002, zzz3002, ty_@0) → new_esEs14(zzz4002, zzz3002)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(ty_[], cbe)) → new_ltEs10(zzz400000, zzz3300000, cbe)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(ty_Maybe, chd)) → new_ltEs8(zzz400000, zzz3300000, chd)
new_esEs19(zzz4000, zzz3000, ty_Double) → new_esEs16(zzz4000, zzz3000)
new_esEs29(zzz400, Just(zzz3300), app(app(app(ty_@3, fc), fd), ff)) → new_esEs5(zzz400, zzz3300, fc, fd, ff)
new_esEs13(:%(zzz4000, zzz4001), :%(zzz3000, zzz3001), cda) → new_asAs(new_esEs27(zzz4000, zzz3000, cda), new_esEs28(zzz4001, zzz3001, cda))
new_asAs(False, zzz202) → False
new_lt14(zzz400000, zzz3300000, ty_Float) → new_lt10(zzz400000, zzz3300000)
new_esEs29(zzz400, Just(zzz3300), ty_Float) → new_esEs15(zzz400, zzz3300)
new_lt20(zzz400000, zzz3300000, ty_Double) → new_lt19(zzz400000, zzz3300000)
new_primMulInt(Pos(zzz40010), Neg(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_primMulInt(Neg(zzz40010), Pos(zzz30010)) → Neg(new_primMulNat0(zzz40010, zzz30010))
new_sizeFM1(EmptyFM, da, db) → Pos(Zero)
new_primMulNat0(Zero, Succ(zzz300100)) → Zero
new_primMulNat0(Succ(zzz400100), Zero) → Zero
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Ordering) → new_ltEs6(zzz400000, zzz3300000)
new_compare14(zzz400000, zzz3300000, de, df, dg) → new_compare25(zzz400000, zzz3300000, new_esEs5(zzz400000, zzz3300000, de, df, dg), de, df, dg)
new_esEs21(zzz4002, zzz3002, ty_Ordering) → new_esEs8(zzz4002, zzz3002)
new_splitGT21(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, False, bh, ca) → new_splitGT11(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, new_lt15(Just(zzz260), zzz2590, bh), bh, ca)
new_compare11(zzz400000, zzz3300000, ty_Bool) → new_compare15(zzz400000, zzz3300000)
new_ltEs8(Just(zzz400000), Just(zzz3300000), app(app(ty_@2, chh), daa)) → new_ltEs4(zzz400000, zzz3300000, chh, daa)
new_esEs31(zzz400, zzz300, ty_Double) → new_esEs16(zzz400, zzz300)
new_esEs22(zzz400000, zzz3300000, app(ty_[], cf)) → new_esEs10(zzz400000, zzz3300000, cf)
new_ltEs16(zzz40000, zzz330000) → new_fsEs(new_compare18(zzz40000, zzz330000))
new_esEs29(zzz400, Just(zzz3300), app(app(ty_Either, ccg), cch)) → new_esEs7(zzz400, zzz3300, ccg, cch)
new_lt20(zzz400000, zzz3300000, app(ty_[], bfe)) → new_lt4(zzz400000, zzz3300000, bfe)
new_lt19(zzz400000, zzz3300000) → new_esEs8(new_compare6(zzz400000, zzz3300000), LT)
new_esEs23(zzz400001, zzz3300001, ty_Float) → new_esEs15(zzz400001, zzz3300001)
new_ltEs18(zzz400002, zzz3300002, ty_Bool) → new_ltEs14(zzz400002, zzz3300002)
new_mkBalBranch6MkBalBranch4(zzz730, zzz731, Branch(zzz7340, zzz7341, zzz7342, zzz7343, zzz7344), zzz152, True, bc, bd) → new_mkBalBranch6MkBalBranch01(zzz730, zzz731, zzz7340, zzz7341, zzz7342, zzz7343, zzz7344, zzz152, new_lt9(new_sizeFM0(zzz7343, bc, bd), new_sr(Pos(Succ(Succ(Zero))), new_sizeFM0(zzz7344, bc, bd))), bc, bd)
new_splitLT11(zzz330, zzz331, zzz332, zzz333, zzz334, False, bc, bd) → zzz333
new_esEs21(zzz4002, zzz3002, ty_Integer) → new_esEs9(zzz4002, zzz3002)
new_splitGT21(zzz2590, zzz2591, zzz2592, zzz2593, zzz2594, zzz260, True, bh, ca) → new_splitGT4(zzz2594, zzz260, bh, ca)
new_compare11(zzz400000, zzz3300000, app(app(ty_Either, cec), ced)) → new_compare17(zzz400000, zzz3300000, cec, ced)
new_compare25(zzz400000, zzz3300000, False, de, df, dg) → new_compare112(zzz400000, zzz3300000, new_ltEs13(zzz400000, zzz3300000, de, df, dg), de, df, dg)
new_esEs26(zzz400000, zzz3300000, ty_Integer) → new_esEs9(zzz400000, zzz3300000)
new_mkBalBranch6MkBalBranch01(zzz730, zzz731, zzz7340, zzz7341, zzz7342, EmptyFM, zzz7344, zzz152, False, bc, bd) → error([])
new_esEs24(zzz4000, zzz3000, ty_Bool) → new_esEs12(zzz4000, zzz3000)
new_esEs23(zzz400001, zzz3300001, ty_Double) → new_esEs16(zzz400001, zzz3300001)
new_compare11(zzz400000, zzz3300000, ty_Ordering) → new_compare8(zzz400000, zzz3300000)
new_ltEs6(LT, GT) → True
new_lt13(zzz400001, zzz3300001, ty_Ordering) → new_lt6(zzz400001, zzz3300001)
new_intersectFM_C2Lts(zzz354, zzz355, zzz356, zzz357, h, ba) → new_splitLT3(Branch(Nothing, zzz354, zzz355, zzz356, zzz357), h, ba)
new_compare112(zzz400000, zzz3300000, False, de, df, dg) → GT
new_esEs4(Just(zzz4000), Just(zzz3000), ty_Double) → new_esEs16(zzz4000, zzz3000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Int) → new_ltEs12(zzz400000, zzz3300000)
new_esEs12(False, True) → False
new_esEs12(True, False) → False
new_esEs7(Left(zzz4000), Left(zzz3000), ty_Bool, cch) → new_esEs12(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_Ratio, ec)) → new_esEs13(zzz4000, zzz3000, ec)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(ty_Ratio, cad), bfd) → new_ltEs11(zzz400000, zzz3300000, cad)
new_esEs30(Just(zzz3300), bc) → False
new_primMinusNat0(Zero, Succ(zzz41000)) → Neg(Succ(zzz41000))
new_mkBalBranch6MkBalBranch01(zzz730, zzz731, zzz7340, zzz7341, zzz7342, zzz7343, zzz7344, zzz152, True, bc, bd) → new_mkBranch(Succ(Succ(Zero)), zzz7340, zzz7341, new_mkBranch(Succ(Succ(Succ(Zero))), zzz730, zzz731, zzz152, zzz7343, app(ty_Maybe, bc), bd), zzz7344, app(ty_Maybe, bc), bd)
new_compare11(zzz400000, zzz3300000, ty_Float) → new_compare12(zzz400000, zzz3300000)
new_esEs11(zzz4000, zzz3000, ty_Integer) → new_esEs9(zzz4000, zzz3000)
new_ltEs18(zzz400002, zzz3300002, app(ty_Maybe, dca)) → new_ltEs8(zzz400002, zzz3300002, dca)
new_gt0(zzz400, zzz330, bc) → new_esEs8(new_compare30(zzz400, zzz330, bc), GT)
new_ltEs14(True, False) → False
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Zero)) → GT
new_primCmpInt(Pos(Succ(zzz40000)), Pos(Succ(zzz330000))) → new_primCmpNat0(zzz40000, zzz330000)
new_ltEs8(Nothing, Nothing, bee) → True
new_esEs31(zzz400, zzz300, app(ty_Maybe, cdb)) → new_esEs4(zzz400, zzz300, cdb)
new_intersectFM_C2Lts0(zzz241, zzz242, zzz243, zzz244, zzz245, be, bf) → new_splitLT22(Just(zzz241), zzz242, zzz243, zzz244, zzz245, new_lt15(Nothing, Just(zzz241), be), be, bf)
new_esEs22(zzz400000, zzz3300000, ty_@0) → new_esEs14(zzz400000, zzz3300000)
new_esEs25(zzz4001, zzz3001, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs5(zzz4001, zzz3001, bde, bdf, bdg)
new_esEs15(Float(zzz4000, zzz4001), Float(zzz3000, zzz3001)) → new_esEs18(new_sr(zzz4000, zzz3000), new_sr(zzz4001, zzz3001))
new_lt20(zzz400000, zzz3300000, ty_Char) → new_lt12(zzz400000, zzz3300000)
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(app(ty_Either, cce), ccf)) → new_ltEs15(zzz400000, zzz3300000, cce, ccf)
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Integer, bfd) → new_ltEs16(zzz400000, zzz3300000)
new_compare27(zzz4000, zzz33000, True, gb) → EQ
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Bool) → new_ltEs14(zzz400000, zzz3300000)
new_mkBalBranch6MkBalBranch11(zzz730, zzz731, zzz734, zzz1520, zzz1521, zzz1522, zzz1523, EmptyFM, False, bc, bd) → error([])
new_primPlusInt(Neg(zzz5230), zzz458, zzz455, zzz457, da, db) → new_primPlusInt1(zzz5230, new_sizeFM1(zzz458, da, db))
new_compare28(zzz400000, zzz3300000, False) → new_compare113(zzz400000, zzz3300000, new_ltEs6(zzz400000, zzz3300000))
new_esEs22(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_gt2(zzz404, zzz403) → new_esEs8(new_compare7(zzz404, zzz403), GT)
new_esEs31(zzz400, zzz300, ty_@0) → new_esEs14(zzz400, zzz300)
new_gt(zzz330, zzz3440, bc) → new_esEs8(new_compare13(zzz330, zzz3440, bc), GT)
new_esEs20(zzz4001, zzz3001, ty_Char) → new_esEs17(zzz4001, zzz3001)
new_ltEs7(zzz40000, zzz330000) → new_fsEs(new_compare6(zzz40000, zzz330000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, app(ty_Ratio, cbf)) → new_ltEs11(zzz400000, zzz3300000, cbf)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs6(LT, EQ) → True
new_mkBalBranch6Size_l(zzz730, zzz731, zzz734, zzz152, bc, bd) → new_sizeFM0(zzz152, bc, bd)
new_addToFM_C0(EmptyFM, zzz330, zzz331, bc, bd) → Branch(zzz330, zzz331, Pos(Succ(Zero)), new_emptyFM(bc, bd), new_emptyFM(bc, bd))
new_ltEs6(GT, LT) → False
new_esEs29(zzz400, Just(zzz3300), ty_Int) → new_esEs18(zzz400, zzz3300)
new_asAs(True, zzz202) → zzz202
new_primMulNat0(Succ(zzz400100), Succ(zzz300100)) → new_primPlusNat0(new_primMulNat0(zzz400100, Succ(zzz300100)), zzz300100)
new_esEs26(zzz400000, zzz3300000, app(app(app(ty_@3, bfh), bga), bgb)) → new_esEs5(zzz400000, zzz3300000, bfh, bga, bgb)
new_splitLT4(Branch(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834), zzz260, bh, ca) → new_splitLT21(zzz25830, zzz25831, zzz25832, zzz25833, zzz25834, zzz260, new_lt15(Just(zzz260), zzz25830, bh), bh, ca)
new_esEs11(zzz4000, zzz3000, ty_Char) → new_esEs17(zzz4000, zzz3000)
new_esEs11(zzz4000, zzz3000, app(ty_[], eh)) → new_esEs10(zzz4000, zzz3000, eh)
new_esEs29(zzz400, Just(zzz3300), ty_Ordering) → new_esEs8(zzz400, zzz3300)
new_ltEs8(Just(zzz400000), Just(zzz3300000), ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_esEs31(zzz400, zzz300, ty_Bool) → new_esEs12(zzz400, zzz300)
new_compare8(zzz400000, zzz3300000) → new_compare28(zzz400000, zzz3300000, new_esEs8(zzz400000, zzz3300000))
new_ltEs15(Right(zzz400000), Right(zzz3300000), bfc, ty_Integer) → new_ltEs16(zzz400000, zzz3300000)
new_lt13(zzz400001, zzz3300001, ty_@0) → new_lt16(zzz400001, zzz3300001)
new_esEs29(zzz400, Just(zzz3300), ty_Integer) → new_esEs9(zzz400, zzz3300)
new_esEs29(zzz400, Just(zzz3300), ty_@0) → new_esEs14(zzz400, zzz3300)
new_fsEs(zzz205) → new_not(new_esEs8(zzz205, GT))
new_esEs31(zzz400, zzz300, app(ty_Ratio, cda)) → new_esEs13(zzz400, zzz300, cda)
new_ltEs20(zzz400001, zzz3300001, ty_Float) → new_ltEs9(zzz400001, zzz3300001)
new_esEs26(zzz400000, zzz3300000, app(app(ty_@2, bgc), bgd)) → new_esEs6(zzz400000, zzz3300000, bgc, bgd)
new_esEs23(zzz400001, zzz3300001, app(app(app(ty_@3, dah), dba), dbb)) → new_esEs5(zzz400001, zzz3300001, dah, dba, dbb)
new_lt20(zzz400000, zzz3300000, ty_Int) → new_lt9(zzz400000, zzz3300000)
new_esEs19(zzz4000, zzz3000, ty_Ordering) → new_esEs8(zzz4000, zzz3000)
new_esEs26(zzz400000, zzz3300000, ty_Double) → new_esEs16(zzz400000, zzz3300000)
new_esEs31(zzz400, zzz300, ty_Float) → new_esEs15(zzz400, zzz300)
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_Either, cbc), cbd), bfd) → new_ltEs15(zzz400000, zzz3300000, cbc, cbd)
new_ltEs15(Left(zzz400000), Right(zzz3300000), bfc, bfd) → True
new_esEs30(Nothing, bc) → True
new_addToFM_C10(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, False, bc, bd) → Branch(zzz330, zzz331, zzz3442, zzz3443, zzz3444)
new_ltEs18(zzz400002, zzz3300002, app(app(ty_@2, dce), dcf)) → new_ltEs4(zzz400002, zzz3300002, dce, dcf)
new_ltEs20(zzz400001, zzz3300001, ty_Ordering) → new_ltEs6(zzz400001, zzz3300001)
new_lt17(zzz400000, zzz3300000, dc, dd) → new_esEs8(new_compare16(zzz400000, zzz3300000, dc, dd), LT)
new_intersectFM_C2Lts2(zzz273, zzz274, zzz275, zzz276, zzz277, zzz278, cc, cd) → new_splitLT21(Just(zzz273), zzz274, zzz275, zzz276, zzz277, zzz278, new_lt15(Just(zzz278), Just(zzz273), cc), cc, cd)
new_compare5(:%(zzz400000, zzz400001), :%(zzz3300000, zzz3300001), ty_Int) → new_compare7(new_sr(zzz400000, zzz3300001), new_sr(zzz3300000, zzz400001))
new_esEs21(zzz4002, zzz3002, ty_Bool) → new_esEs12(zzz4002, zzz3002)
new_compare30(zzz400, zzz330, bc) → new_compare27(Just(zzz400), zzz330, new_esEs29(zzz400, zzz330, bc), bc)
new_splitLT12(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, False, bh, ca) → zzz2583
new_addToFM_C10(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, bc, bd) → new_mkBalBranch(zzz3440, zzz3441, zzz3443, new_addToFM_C0(zzz3444, zzz330, zzz331, bc, bd), bc, bd)
new_lt5(zzz400000, zzz3300000, cg) → new_esEs8(new_compare5(zzz400000, zzz3300000, cg), LT)
new_esEs25(zzz4001, zzz3001, app(app(ty_Either, bda), bdb)) → new_esEs7(zzz4001, zzz3001, bda, bdb)
new_mkBalBranch6Size_r(zzz730, zzz731, zzz734, zzz152, bc, bd) → new_sizeFM0(zzz734, bc, bd)
new_esEs31(zzz400, zzz300, app(app(ty_@2, bbe), bbf)) → new_esEs6(zzz400, zzz300, bbe, bbf)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_primCompAux0(zzz220, EQ) → zzz220
new_ltEs15(Right(zzz400000), Left(zzz3300000), bfc, bfd) → False
new_compare29(zzz400000, zzz3300000, False) → new_compare111(zzz400000, zzz3300000, new_ltEs14(zzz400000, zzz3300000))
new_ltEs15(Left(zzz400000), Left(zzz3300000), app(app(ty_@2, cba), cbb), bfd) → new_ltEs4(zzz400000, zzz3300000, cba, cbb)
new_splitLT21(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, False, bh, ca) → new_splitLT12(zzz2580, zzz2581, zzz2582, zzz2583, zzz2584, zzz260, new_gt0(zzz260, zzz2580, bh), bh, ca)
new_ltEs20(zzz400001, zzz3300001, ty_Char) → new_ltEs17(zzz400001, zzz3300001)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_mkVBalBranch3MkVBalBranch10(zzz3330, zzz3331, zzz3332, zzz3333, zzz3334, zzz3440, zzz3441, zzz3442, zzz3443, zzz3444, zzz330, zzz331, True, bc, bd) → new_mkBalBranch(zzz3330, zzz3331, zzz3333, new_mkVBalBranch0(zzz330, zzz331, zzz3334, Branch(zzz3440, zzz3441, zzz3442, zzz3443, zzz3444), bc, bd), bc, bd)
new_primCmpInt(Neg(Succ(zzz40000)), Pos(zzz33000)) → LT
new_ltEs15(Left(zzz400000), Left(zzz3300000), ty_Float, bfd) → new_ltEs9(zzz400000, zzz3300000)
new_not(True) → False
new_primMinusNat0(Succ(zzz152200), Succ(zzz41000)) → new_primMinusNat0(zzz152200, zzz41000)
new_esEs25(zzz4001, zzz3001, ty_Integer) → new_esEs9(zzz4001, zzz3001)
new_esEs19(x0, x1, ty_Integer)
new_ltEs11(x0, x1, x2)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(x0, x1, ty_Ordering)
new_ltEs15(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Right(x1), x2, x3)
new_lt14(x0, x1, ty_Double)
new_ltEs8(Just(x0), Just(x1), ty_Int)
new_primPlusInt1(x0, Pos(x1))
new_compare13(x0, x1, x2)
new_esEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_primMinusNat0(Zero, Zero)
new_intersectFM_C2Gts0(x0, x1, x2, x3, x4, x5, x6)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, Just(x1), app(ty_Maybe, x2))
new_ltEs18(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, Just(x1), ty_Integer)
new_esEs11(x0, x1, ty_@0)
new_primPlusNat0(Succ(x0), x1)
new_primPlusNat0(Zero, x0)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_pePe(True, x0)
new_esEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs19(x0, x1, ty_Int)
new_asAs(True, x0)
new_lt13(x0, x1, ty_Ordering)
new_esEs4(Just(x0), Just(x1), app(ty_[], x2))
new_compare25(x0, x1, True, x2, x3, x4)
new_esEs12(False, False)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare([], :(x0, x1), x2)
new_compare16(x0, x1, x2, x3)
new_ltEs8(Just(x0), Just(x1), ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs15(Left(x0), Left(x1), ty_Ordering, x2)
new_lt11(x0, x1)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_splitGT22(x0, x1, x2, x3, x4, True, x5, x6)
new_splitGT22(x0, x1, x2, x3, x4, False, x5, x6)
new_compare111(x0, x1, False)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare10(x0, x1, False, x2, x3)
new_esEs26(x0, x1, ty_Int)
new_esEs20(x0, x1, ty_Bool)
new_compare15(x0, x1)
new_lt14(x0, x1, ty_Ordering)
new_esEs26(x0, x1, ty_Double)
new_compare110(x0, x1, False, x2)
new_esEs29(x0, Just(x1), app(ty_[], x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs24(x0, x1, ty_@0)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare19(Char(x0), Char(x1))
new_primPlusNat1(Succ(x0), Zero)
new_compare28(x0, x1, False)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs22(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_[], x2))
new_splitLT3(Branch(x0, x1, x2, x3, x4), x5, x6)
new_ltEs18(x0, x1, app(ty_[], x2))
new_compare6(Double(x0, x1), Double(x2, x3))
new_esEs4(Just(x0), Just(x1), ty_Bool)
new_esEs11(x0, x1, ty_Float)
new_primCompAux0(x0, LT)
new_lt17(x0, x1, x2, x3)
new_esEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs14(True, False)
new_ltEs14(False, True)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_mkBalBranch6MkBalBranch3(x0, x1, x2, x3, False, x4, x5)
new_esEs11(x0, x1, app(ty_[], x2))
new_sizeFM1(EmptyFM, x0, x1)
new_esEs8(GT, GT)
new_mkBalBranch(x0, x1, x2, x3, x4, x5)
new_primMulInt(Pos(x0), Pos(x1))
new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_esEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt10(x0, x1)
new_esEs7(Left(x0), Right(x1), x2, x3)
new_esEs7(Right(x0), Left(x1), x2, x3)
new_ltEs15(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare11(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusInt0(x0, Neg(x1))
new_esEs8(LT, LT)
new_lt20(x0, x1, ty_Double)
new_lt18(x0, x1, x2, x3)
new_esEs19(x0, x1, ty_Int)
new_splitLT4(Branch(x0, x1, x2, x3, x4), x5, x6, x7)
new_esEs4(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs7(x0, x1)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, False, x7, x8)
new_compare114(x0, x1, True, x2, x3)
new_compare11(x0, x1, ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt13(x0, x1, ty_Double)
new_ltEs15(Right(x0), Right(x1), x2, ty_Float)
new_ltEs15(Right(x0), Right(x1), x2, ty_Double)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_lt13(x0, x1, ty_@0)
new_esEs4(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs6(EQ, EQ)
new_lt20(x0, x1, ty_Integer)
new_esEs29(x0, Just(x1), app(app(ty_Either, x2), x3))
new_ltEs8(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, ty_Int)
new_splitLT21(x0, x1, x2, x3, x4, x5, True, x6, x7)
new_lt14(x0, x1, ty_Int)
new_esEs8(LT, GT)
new_esEs8(GT, LT)
new_compare27(Nothing, Nothing, False, x0)
new_esEs19(x0, x1, app(ty_[], x2))
new_esEs10([], [], x0)
new_esEs31(x0, x1, ty_Double)
new_lt13(x0, x1, app(ty_Maybe, x2))
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, EmptyFM, False, x7, x8)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_compare24(x0, x1, False, x2, x3)
new_ltEs6(LT, EQ)
new_ltEs6(EQ, LT)
new_lt8(x0, x1, x2, x3, x4)
new_lt7(x0, x1)
new_esEs7(Left(x0), Left(x1), ty_Float, x2)
new_esEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs15(Left(x0), Left(x1), ty_Int, x2)
new_ltEs15(Right(x0), Right(x1), x2, ty_Integer)
new_esEs11(x0, x1, ty_Integer)
new_ltEs8(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs20(x0, x1, ty_Float)
new_lt9(x0, x1)
new_primCmpNat0(Succ(x0), Zero)
new_primEqNat0(Zero, Zero)
new_intersectFM_C2Gts1(x0, x1, x2, x3, x4, x5, x6)
new_splitLT22(x0, x1, x2, x3, x4, True, x5, x6)
new_ltEs15(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs18(x0, x1)
new_esEs19(x0, x1, ty_Ordering)
new_esEs19(x0, x1, ty_Char)
new_lt20(x0, x1, ty_Ordering)
new_esEs4(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Nothing, Nothing, x0)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Nothing, Nothing, x0)
new_sizeFM0(EmptyFM, x0, x1)
new_esEs22(x0, x1, ty_Char)
new_splitLT12(x0, x1, x2, x3, x4, x5, False, x6, x7)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_ltEs15(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs13(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs23(x0, x1, ty_Char)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs4(Nothing, Just(x0), x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt19(x0, x1)
new_sizeFM(x0, x1, x2, x3, x4, x5, x6)
new_compare27(Just(x0), Just(x1), False, x2)
new_ltEs8(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs6(@2(x0, x1), @2(x2, x3), x4, x5)
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, Branch(x7, x8, x9, x10, x11), False, x12, x13)
new_ltEs15(Right(x0), Right(x1), x2, ty_Ordering)
new_compare11(x0, x1, ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Int)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_ltEs18(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_addToFM_C0(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8)
new_lt15(x0, x1, x2)
new_primMulNat0(Zero, Succ(x0))
new_esEs29(x0, Nothing, x1)
new_compare11(x0, x1, ty_Double)
new_compare14(x0, x1, x2, x3, x4)
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, False, x4, x5)
new_esEs31(x0, x1, ty_Integer)
new_ltEs20(x0, x1, ty_Char)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Bool)
new_mkVBalBranch0(x0, x1, EmptyFM, x2, x3, x4)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_splitGT12(x0, x1, x2, x3, x4, True, x5, x6)
new_ltEs8(Just(x0), Just(x1), ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Integer)
new_primCmpNat0(Succ(x0), Succ(x1))
new_splitLT21(x0, x1, x2, x3, x4, x5, False, x6, x7)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_sIZE_RATIO
new_lt12(x0, x1)
new_lt14(x0, x1, ty_Char)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Bool)
new_compare8(x0, x1)
new_ltEs17(x0, x1)
new_compare11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Integer)
new_gt(x0, x1, x2)
new_lt14(x0, x1, app(app(ty_Either, x2), x3))
new_sizeFM0(Branch(x0, x1, x2, x3, x4), x5, x6)
new_esEs14(@0, @0)
new_compare12(Float(x0, x1), Float(x2, x3))
new_esEs19(x0, x1, ty_Double)
new_esEs29(x0, Just(x1), app(ty_Ratio, x2))
new_esEs23(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Int)
new_splitLT3(EmptyFM, x0, x1)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs10([], :(x0, x1), x2)
new_compare30(x0, x1, x2)
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs6(GT, LT)
new_ltEs6(LT, GT)
new_compare17(x0, x1, x2, x3)
new_esEs29(x0, Just(x1), ty_@0)
new_esEs31(x0, x1, ty_Char)
new_esEs23(x0, x1, ty_Ordering)
new_ltEs15(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs18(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare(:(x0, x1), :(x2, x3), x4)
new_pePe(False, x0)
new_esEs26(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), ty_@0)
new_esEs27(x0, x1, ty_Integer)
new_compare29(x0, x1, True)
new_esEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_splitGT12(x0, x1, x2, x3, x4, False, x5, x6)
new_esEs11(x0, x1, ty_Double)
new_esEs7(Right(x0), Right(x1), x2, ty_Int)
new_ltEs18(x0, x1, ty_Char)
new_ltEs8(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, False, x4, x5)
new_ltEs15(Left(x0), Left(x1), ty_Integer, x2)
new_mkBranch(x0, x1, x2, x3, x4, x5, x6)
new_esEs23(x0, x1, ty_Float)
new_ltEs15(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_primMulNat0(Succ(x0), Zero)
new_esEs29(x0, Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs15(Left(x0), Left(x1), ty_Bool, x2)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_compare27(Nothing, Just(x0), False, x1)
new_splitGT4(Branch(x0, x1, x2, x3, x4), x5, x6, x7)
new_addToFM(x0, x1, x2, x3, x4)
new_primPlusInt(Pos(x0), x1, x2, x3, x4, x5)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Zero)
new_ltEs8(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs18(x0, x1, ty_Integer)
new_compare110(x0, x1, True, x2)
new_esEs26(x0, x1, ty_Bool)
new_compare(:(x0, x1), [], x2)
new_primPlusInt0(x0, Pos(x1))
new_esEs26(x0, x1, ty_Float)
new_esEs16(Double(x0, x1), Double(x2, x3))
new_esEs29(x0, Just(x1), ty_Char)
new_esEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_compare24(x0, x1, True, x2, x3)
new_esEs25(x0, x1, ty_Char)
new_splitLT12(x0, x1, x2, x3, x4, x5, True, x6, x7)
new_ltEs19(x0, x1, ty_@0)
new_lt14(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Int)
new_mkBalBranch6Size_r(x0, x1, x2, x3, x4, x5)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs18(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs20(x0, x1, ty_Int)
new_compare5(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusInt2(Branch(x0, x1, Pos(x2), x3, x4), x5, x6, x7, x8, x9)
new_esEs24(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), ty_Ordering)
new_lt6(x0, x1)
new_ltEs15(Left(x0), Left(x1), ty_@0, x2)
new_lt14(x0, x1, ty_Bool)
new_esEs21(x0, x1, ty_Char)
new_ltEs9(x0, x1)
new_esEs21(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_Float)
new_esEs7(Right(x0), Right(x1), x2, ty_@0)
new_intersectFM_C2Gts2(x0, x1, x2, x3, x4, x5, x6, x7)
new_compare11(x0, x1, ty_Integer)
new_gt0(x0, x1, x2)
new_ltEs18(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs7(Right(x0), Right(x1), x2, ty_Float)
new_lt20(x0, x1, ty_Bool)
new_lt16(x0, x1)
new_ltEs10(x0, x1, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_splitGT21(x0, x1, x2, x3, x4, x5, True, x6, x7)
new_compare18(Integer(x0), Integer(x1))
new_esEs31(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, True, x4, x5)
new_ltEs15(Left(x0), Left(x1), ty_Double, x2)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs12(True, True)
new_sizeFM1(Branch(x0, x1, x2, x3, x4), x5, x6)
new_esEs24(x0, x1, ty_Integer)
new_esEs29(x0, Just(x1), ty_Int)
new_esEs4(Just(x0), Just(x1), ty_Float)
new_esEs21(x0, x1, ty_Ordering)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), Branch(x7, x8, x9, x10, x11), x12, x13)
new_esEs24(x0, x1, ty_Double)
new_splitLT11(x0, x1, x2, x3, x4, True, x5, x6)
new_ltEs19(x0, x1, ty_Bool)
new_intersectFM_C2Lts(x0, x1, x2, x3, x4, x5)
new_lt13(x0, x1, ty_Int)
new_intersectFM_C2Lts0(x0, x1, x2, x3, x4, x5, x6)
new_esEs22(x0, x1, app(ty_[], x2))
new_lt14(x0, x1, ty_Integer)
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_ltEs18(x0, x1, ty_@0)
new_esEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1, ty_Char)
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs29(x0, Just(x1), app(app(ty_@2, x2), x3))
new_primEqNat0(Succ(x0), Succ(x1))
new_esEs24(x0, x1, ty_Char)
new_addToFM_C0(EmptyFM, x0, x1, x2, x3)
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, Just(x1), ty_Ordering)
new_ltEs8(Just(x0), Just(x1), ty_Float)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_esEs26(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_@0)
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_primCompAux1(x0, x1, x2, x3)
new_esEs8(EQ, EQ)
new_esEs7(Left(x0), Left(x1), ty_Bool, x2)
new_compare11(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Float)
new_esEs29(x0, Just(x1), ty_Float)
new_compare11(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, ty_Int)
new_esEs7(Right(x0), Right(x1), x2, ty_Char)
new_primEqInt(Neg(Zero), Neg(Zero))
new_intersectFM_C2Lts1(x0, x1, x2, x3, x4, x5, x6)
new_asAs(False, x0)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(Just(x0), Just(x1), ty_Double)
new_primMinusNat0(Zero, Succ(x0))
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, EmptyFM, x5, x6, False, x7, x8)
new_compare11(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, Just(x1), ty_Bool)
new_compare113(x0, x1, True)
new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, Branch(x5, x6, x7, x8, x9), x10, x11, False, x12, x13)
new_lt13(x0, x1, ty_Float)
new_primCmpNat0(Zero, Succ(x0))
new_intersectFM_C2Lts2(x0, x1, x2, x3, x4, x5, x6, x7)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_ltEs15(Left(x0), Left(x1), ty_Char, x2)
new_lt13(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(:(x0, x1), :(x2, x3), x4)
new_ltEs15(Right(x0), Right(x1), x2, ty_Bool)
new_mkVBalBranch3Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs11(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Double)
new_compare112(x0, x1, False, x2, x3, x4)
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs8(Just(x0), Nothing, x1)
new_ltEs18(x0, x1, app(ty_Ratio, x2))
new_esEs25(x0, x1, ty_Bool)
new_mkBalBranch6MkBalBranch4(x0, x1, EmptyFM, x2, True, x3, x4)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, ty_Int)
new_lt14(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs15(Float(x0, x1), Float(x2, x3))
new_primMulInt(Neg(x0), Neg(x1))
new_compare5(:%(x0, x1), :%(x2, x3), ty_Int)
new_compare27(x0, x1, True, x2)
new_esEs20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Char)
new_lt13(x0, x1, app(ty_Ratio, x2))
new_intersectFM_C2Gts(x0, x1, x2, x3, x4, x5)
new_primPlusInt1(x0, Neg(x1))
new_primCmpInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare29(x0, x1, False)
new_ltEs15(Right(x0), Right(x1), x2, ty_@0)
new_esEs20(x0, x1, ty_Double)
new_ltEs6(GT, GT)
new_lt13(x0, x1, ty_Bool)
new_esEs7(Left(x0), Left(x1), ty_Int, x2)
new_lt4(x0, x1, x2)
new_esEs23(x0, x1, ty_Integer)
new_esEs8(EQ, GT)
new_esEs8(GT, EQ)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_splitGT4(EmptyFM, x0, x1, x2)
new_ltEs8(Nothing, Just(x0), x1)
new_mkVBalBranch0(x0, x1, Branch(x2, x3, x4, x5, x6), EmptyFM, x7, x8)
new_compare10(x0, x1, True, x2, x3)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt14(x0, x1, app(app(ty_@2, x2), x3))
new_lt13(x0, x1, app(ty_[], x2))
new_esEs4(Just(x0), Just(x1), app(ty_Maybe, x2))
new_compare11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs4(Just(x0), Nothing, x1)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_primCmpNat0(Zero, Zero)
new_ltEs18(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Just(x0), Just(x1), ty_Char)
new_esEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs15(Left(x0), Left(x1), ty_Float, x2)
new_esEs27(x0, x1, ty_Int)
new_ltEs6(LT, LT)
new_primPlusInt2(EmptyFM, x0, x1, x2, x3, x4)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs22(x0, x1, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_primPlusNat1(Zero, Succ(x0))
new_ltEs18(x0, x1, ty_Double)
new_lt13(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_primMinusNat0(Succ(x0), Zero)
new_lt5(x0, x1, x2)
new_esEs4(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs28(x0, x1, ty_Integer)
new_esEs17(Char(x0), Char(x1))
new_mkBalBranch6MkBalBranch3(x0, x1, x2, EmptyFM, True, x3, x4)
new_ltEs15(Right(x0), Right(x1), x2, ty_Int)
new_emptyFM(x0, x1)
new_mkBalBranch6MkBalBranch3(x0, x1, x2, Branch(x3, x4, x5, x6, x7), True, x8, x9)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusInt(Neg(x0), x1, x2, x3, x4, x5)
new_lt20(x0, x1, ty_Char)
new_esEs25(x0, x1, ty_Integer)
new_splitGT3(EmptyFM, x0, x1)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, ty_Double)
new_esEs4(Just(x0), Just(x1), ty_Char)
new_ltEs20(x0, x1, ty_Ordering)
new_esEs12(False, True)
new_esEs12(True, False)
new_esEs31(x0, x1, ty_Float)
new_compare28(x0, x1, True)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_mkBalBranch6Size_l(x0, x1, x2, x3, x4, x5)
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_sr(x0, x1)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(@0, @0)
new_splitGT11(x0, x1, x2, x3, x4, x5, True, x6, x7)
new_esEs31(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_fsEs(x0)
new_ltEs14(True, True)
new_esEs31(x0, x1, ty_Int)
new_esEs21(x0, x1, ty_Integer)
new_ltEs14(False, False)
new_compare26(x0, x1, False, x2, x3)
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs23(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1)
new_esEs11(x0, x1, ty_Ordering)
new_esEs25(x0, x1, ty_Int)
new_esEs23(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Float)
new_primEqNat0(Zero, Succ(x0))
new_not(True)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs15(Right(x0), Right(x1), x2, ty_Char)
new_primCompAux0(x0, EQ)
new_splitLT4(EmptyFM, x0, x1, x2)
new_compare27(Just(x0), Nothing, False, x1)
new_esEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_@0)
new_esEs20(x0, x1, ty_Integer)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_splitGT21(x0, x1, x2, x3, x4, x5, False, x6, x7)
new_primCmpInt(Neg(Succ(x0)), Neg(Zero))
new_compare111(x0, x1, True)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_compare31(x0, x1)
new_not(False)
new_esEs30(Nothing, x0)
new_splitGT11(x0, x1, x2, x3, x4, x5, False, x6, x7)
new_esEs21(x0, x1, ty_@0)
new_ltEs6(GT, EQ)
new_ltEs6(EQ, GT)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_lt13(x0, x1, app(app(ty_@2, x2), x3))
new_splitLT11(x0, x1, x2, x3, x4, False, x5, x6)
new_primPlusInt2(Branch(x0, x1, Neg(x2), x3, x4), x5, x6, x7, x8, x9)
new_compare26(x0, x1, True, x2, x3)
new_esEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt14(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, ty_Int)
new_primMinusNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Bool)
new_mkVBalBranch3MkVBalBranch10(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_esEs29(x0, Just(x1), ty_Double)
new_compare112(x0, x1, True, x2, x3, x4)
new_mkVBalBranch3Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
new_esEs8(LT, EQ)
new_esEs8(EQ, LT)
new_lt14(x0, x1, ty_@0)
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs26(x0, x1, app(ty_[], x2))
new_ltEs8(Just(x0), Just(x1), ty_Ordering)
new_esEs4(Just(x0), Just(x1), ty_@0)
new_splitLT22(x0, x1, x2, x3, x4, False, x5, x6)
new_esEs25(x0, x1, ty_Double)
new_compare11(x0, x1, app(ty_Maybe, x2))
new_esEs7(Left(x0), Left(x1), ty_Double, x2)
new_compare114(x0, x1, False, x2, x3)
new_compare25(x0, x1, False, x2, x3, x4)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1)
new_esEs24(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), app(ty_[], x2))
new_esEs25(x0, x1, app(ty_[], x2))
new_compare([], [], x0)
new_esEs31(x0, x1, ty_@0)
new_esEs19(x0, x1, ty_Bool)
new_esEs25(x0, x1, ty_@0)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13)
new_ltEs15(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_lt20(x0, x1, ty_Int)
new_mkBalBranch6MkBalBranch4(x0, x1, Branch(x2, x3, x4, x5, x6), x7, True, x8, x9)
new_esEs7(Left(x0), Left(x1), ty_@0, x2)
new_sr0(Integer(x0), Integer(x1))
new_esEs20(x0, x1, ty_Ordering)
new_compare11(x0, x1, ty_Char)
new_gt1(x0, x1)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs22(x0, x1, ty_Ordering)
new_esEs21(x0, x1, ty_Int)
new_primCompAux0(x0, GT)
new_ltEs18(x0, x1, ty_Ordering)
new_esEs9(Integer(x0), Integer(x1))
new_ltEs15(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs7(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9)
new_esEs22(x0, x1, ty_Float)
new_esEs21(x0, x1, ty_Float)
new_primEqNat0(Succ(x0), Zero)
new_ltEs20(x0, x1, ty_Double)
new_esEs22(x0, x1, ty_@0)
new_esEs10(:(x0, x1), [], x2)
new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_compare11(x0, x1, ty_Float)
new_ltEs8(Just(x0), Just(x1), ty_Bool)
new_esEs30(Just(x0), x1)
new_splitGT3(Branch(x0, x1, x2, x3, x4), x5, x6)
new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, True, x7, x8)
new_compare113(x0, x1, False)
new_ltEs12(x0, x1)
new_lt14(x0, x1, app(ty_[], x2))
new_gt2(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_compare11(x0, x1, ty_Bool)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
From the DPs we obtained the following set of size-change graphs: